aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2016-03-17re PR c++/70272 (-flifetime-dse miscompilation starting with r217967)Jakub Jelinek6-3/+29
PR c++/70272 * decl.c (begin_destructor_body): Don't insert clobber if is_empty_class (current_class_type). * g++.dg/opt/flifetime-dse5.C (main): Remove extra semicolon. * g++.dg/opt/flifetime-dse6.C: New test. * g++.dg/tree-ssa/ehcleanup-1.C: Adjust unreachable count. From-SVN: r234296
2016-03-17Properly set flag_pie and flag_picH.J. Lu14-3/+125
We can't set flag_pie to the default when flag_pic == 0, which may be set by -fno-pic or -fno-PIC, since the default value of flag_pie is non-zero when GCC is configured with --enable-default-pie. We need to initialize flag_pic to -1 so that we can tell if -fpic, -fPIC, -fno-pic or -fno-PIC is used. Since Darwin defaults to PIC (__PIC__ == 2) and the PIC setting can't be changed, skip tests of default __PIC__ and __PIE__ setting for *-*-darwin* targets. gcc/ PR driver/70192 * opts.c (finish_options): Don't set flag_pie to the default if -fpic, -fPIC, -fno-pic or -fno-PIC is used. Set flag_pic to 0 if it is -1. gcc/testsuite/ PR driver/70192 * gcc.dg/pic-1.c: New test. * gcc.dg/pic-2.c: Likewise. * gcc.dg/pic-3.c: Likewise. * gcc.dg/pic-4.c: Likewise. * gcc.dg/pie-1.c: Likewise. * gcc.dg/pie-2.c: Likewise. * gcc.dg/pie-3.c: Likewise. * gcc.dg/pie-4.c: Likewise. * gcc.dg/pie-5.c: Likewise. * gcc.dg/pie-6.c: Likewise. From-SVN: r234295
2016-03-17Rename GOMP_MAP_FORCE_DEALLOC to GOMP_MAP_DELETEThomas Schwinge9-10/+15
Also rename the Fortran OMP_MAP_FORCE_DEALLOC to OMP_MAP_DELETE. include/ * gomp-constants.h (enum gomp_map_kind): Rename GOMP_MAP_FORCE_DEALLOC to GOMP_MAP_DELETE. Adjust all users. gcc/fortran/ * gfortran.h (enum gfc_omp_map_op): Rename OMP_MAP_FORCE_DEALLOC to OMP_MAP_DELETE. Adjust all users. From-SVN: r234294
2016-03-17Add goacc/kernels-alias-{3,4}.f95Tom de Vries3-0/+44
2016-03-17 Tom de Vries <tom@codesourcery.com> * gfortran.dg/goacc/kernels-alias-3.f95: New test. * gfortran.dg/goacc/kernels-alias-4.f95: New test. From-SVN: r234292
2016-03-17i386.md (*movv4qicc_insn+1..36): Pass true as ALL_REGS argument to replace_rtx.Joern Rennecke2-2/+7
* config/i386/i386.md (*movv4qicc_insn+1..36): Pass true as ALL_REGS argument to replace_rtx. From-SVN: r234290
2016-03-17re PR debug/70271 (internal compiler error: in dwarf2out_finish, at ↵Richard Biener4-9/+54
dwarf2out.c:27346) 2016-03-17 Richard Biener <rguenther@suse.de> PR debug/70271 * dwarf2out.c (dwarf2out_early_finish): Process deferred_asm_name last. * g++.dg/debug/pr70271.C: New testcase. From-SVN: r234289
2016-03-17re PR middle-end/70245 (Miscompilation of ICU on i386 with atom tuning ↵Jakub Jelinek4-9/+31
starting with r227382) PR target/70245 * rtl.h (replace_rtx): Add ALL_REGS argument. * rtlanal.c (replace_rtx): Likewise. If true, use REGNO equality and assert mode is the same, instead of just rtx pointer equality. * config/i386/i386.md (mov + arithmetics with load peephole): Pass true as ALL_REGS argument to replace_rtx. From-SVN: r234285
2016-03-17Set flag_pic to flag_pie for PIE in LTOH.J. Lu2-1/+7
Since PIE implies PIC, we should set flag_pic to flag_pie for PIE in LTO. PR lto/70258 * lto-lang.c (lto_post_options): Set flag_pic to flag_pie for PIE. From-SVN: r234284
2016-03-17match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Apply for boolean ↵Ilya Enkovich4-0/+64
vector with vector mode only. gcc/ * match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Apply for boolean vector with vector mode only. (A - (B vcmp C ? 1 : 0) -> A + (B vcmp C)): Likewise. gcc/testsuite/ * gcc.target/i386/pr70251.c: New test. From-SVN: r234283
2016-03-17re PR c++/70194 (missing -Waddress on constexpr pointer)Marek Polacek4-52/+57
PR c++/70194 * typeck.c (warn_for_null_address): New function. (cp_build_binary_op): Call it. * g++.dg/warn/constexpr-70194.C: New test. From-SVN: r234281
2016-03-17re PR target/70162 ([RX] const_int printing causes wrong code on 32 bit host)Nick Clifton2-1/+7
PR target/70162 * config/rx/rx.c (rx_print_integer): Print negative constants in decimal. From-SVN: r234280
2016-03-17re PR rtl-optimization/70261 (r234265 causes fails on rs6000)Jakub Jelinek2-10/+6
PR target/70261 * rtlanal.c (replace_rtx): Revert 2016-03-16 change. From-SVN: r234279
2016-03-17* fr.po: Update.Joseph Myers2-306/+143
From-SVN: r234278
2016-03-17Daily bump.GCC Administrator1-1/+1
From-SVN: r234276
2016-03-16re PR middle-end/70240 (ICE: in gimplify_modify_expr, at gimplify.c:4854 ↵Richard Henderson2-0/+31
with -ftree-vectorize) PR middle-end/70240 * gcc.c-torture/compile/pr70240.c: New. From-SVN: r234273
2016-03-16Revert r231575Richard Henderson2-23/+39
PR middle-end/70240 PR middle-end/68215 2015-12-11 Eric Botcazou <ebotcazou@adacore.com> * tree-vect-generic.c (tree_vec_extract): Remove GSI parameter. Do not gimplify the result. (do_unop): Adjust call to tree_vec_extract. (do_binop): Likewise. (do_compare): Likewise. (do_plus_minus): Likewise. (do_negate): Likewise. (expand_vector_condition): Likewise. (do_cond): Likewise. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r234272
2016-03-16Gimplify vec_cond_expr with condition insideRichard Henderson2-1/+25
PR middle-end/70240 PR middle-end/68215 PR tree-opt/68714 * gimplify.c (gimplify_expr) [VEC_COND_EXPR]: Gimplify the first operand as is_gimple_condexpr. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r234271
2016-03-16re PR target/70048 ([AArch64] Inefficient local array addressing)Richard Henderson2-70/+54
PR target/70048 * config/aarch64/aarch64.c (virt_or_elim_regno_p): New. (aarch64_classify_address): Use it. (aarch64_legitimize_address): Force all subexpressions of PLUS into registers. Simplify as (sfp+const)+reg or (reg+reg)+const. From-SVN: r234269
2016-03-16re PR c++/70259 (-flifetime-dse=2 bug with empty bases)Jason Merrill3-0/+20
PR c++/70259 * decl.c (start_preparsed_function): Don't clobber an empty base. From-SVN: r234267
2016-03-1620151204.c: Skip for avr.Senthil Kumar Selvaraj2-0/+6
2016-03-16 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> * gcc.c-torture/compile/20151204.c: Skip for avr. From-SVN: r234266
2016-03-16re PR middle-end/70245 (Miscompilation of ICU on i386 with atom tuning ↵Jakub Jelinek6-1/+147
starting with r227382) PR target/70245 * rtlanal.c (replace_rtx): For REG, if from is a REG, return to even if only REGNO is equal, and assert mode is the same. * g++.dg/opt/pr70245.C: New test. * g++.dg/opt/pr70245.h: New file. * g++.dg/opt/pr70245-aux.cc: New file. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r234265
2016-03-16g++.dg/cpp1y/constexpr-instantiate.C: Correct DejaGnu directives.Martin Sebor2-2/+7
From-SVN: r234264
2016-03-16Fix bug ID in last commitJeff Law1-1/+1
From-SVN: r234263
2016-03-16re PR rtl-optimization/70224 (ICE: RTL flag check: CROSSING_JUMP_P used with ↵Jeff Law2-1/+6
unexpected rtx code 'insn' in relax_delay_slots, at reorg.c:3310) PR rtl-optimization/70024 * reorg.c (relax_delay_slots): Pass right argument to CROSSING_JUMP_P. From-SVN: r234262
2016-03-16re PR middle-end/70199 (Crash at -O2 when using labels.)Richard Henderson10-48/+71
PR middle-end/70199 * function.h (struct function): Add has_forced_label_in_static. * gimplify.c (force_labels_r): Set it. * lto-streamer-in.c (input_struct_function_base): Read it. * lto-streamer-out.c (output_struct_function_base): Write it. * tree-inline.c (has_label_address_in_static_1): Remove. (copy_forbidden): Remove fndecl parameter; test has_forced_label_in_static. (inline_forbidden_p): Update call to copy_forbidden. (tree_versionable_function_p): Likewise. * ipa-chkp.c (chkp_instrumentable_p): Likewise. (chkp_versioning): Likewise. * tree-inline.h (copy_forbidden): Update decl. testsuite/ * gcc.c-torture/compile/pr70199.c: New. From-SVN: r234261
2016-03-16Run dos2unix on gcc.dg/uninit-19.cH.J. Lu2-26/+30
* gcc.dg/uninit-19.c: Run dos2unix. From-SVN: r234260
2016-03-16re PR c/70093 (Instancing function with VM return type cases internal ↵Marek Polacek8-2/+138
compiler error in 'assign_stack_temp_for_type'.) PR c/70093 * c-typeck.c (build_function_call_vec): Create a TARGET_EXPR for nested functions returning VM types. * cgraphunit.c (cgraph_node::expand_thunk): Also build call to the function being thunked if the result type doesn't have fixed size. * gimplify.c (gimplify_modify_expr): Also set LHS if the result type doesn't have fixed size. * gcc.dg/nested-func-10.c: New test. * gcc.dg/nested-func-9.c: New test. From-SVN: r234259
2016-03-16re PR tree-optimization/68714 (less folding of vector comparison)Jakub Jelinek2-1/+7
PR tree-optimization/68714 * gcc.dg/tree-ssa/pr68714.c: Add -w -Wno-psabi to dg-options. From-SVN: r234258
2016-03-16tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by reporting ↵Bin Cheng2-2/+8
malformed loop nest. * tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by reporting malformed loop nest. From-SVN: r234254
2016-03-16Safely use nodes[0] in possible_polymorphic_call_targetsTom de Vries2-2/+7
2016-03-16 Tom de Vries <tom@codesourcery.com> PR lto/70187 * ipa-devirt.c (possible_polymorphic_call_targets): Move nodes.length () == 1 test to before first nodes[0] access. From-SVN: r234253
2016-03-16Makefile.in: Add support for x86 GNU/Hurd.Svante Signell3-1/+836
* gcc-interface/Makefile.in: Add support for x86 GNU/Hurd. * s-osinte-gnu.ads: New file. From-SVN: r234252
2016-03-16Add missing single_pred_p test in scop_detection::merge_seseTom de Vries6-1/+118
2016-03-16 Tom de Vries <tom@codesourcery.com> PR tree-optimization/68715 * graphite-scop-detection.c (scop_detection::merge_sese): Add missing single_pred_p test. * gcc.dg/graphite/pr68715-2.c: New test. * gcc.dg/graphite/pr68715.c: New test. * gfortran.dg/graphite/pr68715.f90: New test. From-SVN: r234251
2016-03-16Fix same_close_phi_nodeTom de Vries5-2/+71
2016-03-16 Tom de Vries <tom@codesourcery.com> PR tree-optimization/68809 * graphite-scop-detection.c (same_close_phi_node): Test if result types are the same. * gcc.dg/graphite/pr68809-2.c: New test. * gcc.dg/graphite/pr68809.c: New test. From-SVN: r234250
2016-03-16re PR sanitizer/70147 (testcase from hana testsuite gets miscompiled with ↵Jakub Jelinek4-14/+22
-fsanitize=undefined) PR c++/70147 * cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs): Conditionalize BINFO_VIRTUAL_P vtable clearing on current_in_charge_parm. * g++.dg/ubsan/pr70147-2.C (C::C): Initialize A base with invalid method call to i () as argument. Adjust expected output. From-SVN: r234249
2016-03-16re PR sanitizer/70147 (testcase from hana testsuite gets miscompiled with ↵Jakub Jelinek5-0/+113
-fsanitize=undefined) PR c++/70147 * cp-ubsan.c (cp_ubsan_maybe_initialize_vtbl_ptrs): Temporarily set in_base_initializer. * g++.dg/ubsan/pr70147-1.C: New test. * g++.dg/ubsan/pr70147-2.C: New test. From-SVN: r234248
2016-03-16Cleanup and expand on the 'leaf' function attribute documentation.Carlos O'Donell2-23/+40
Describe the problems that a user might face with indirect functions and ELF symbol interposition. gcc/ChangeLog: 2016-03-16 Carlos O'Donell <carlos@redhat.com> Sandra Loosemore <sandra@codesourcery.com> * doc/extend.texi (Common Function Attributes): Describe ifunc impact on leaf attribute. Mention ELF interposition problems. Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com> From-SVN: r234247
2016-03-15PR c++/58281 - Problem with explicitly instantiated constexpr templateMartin Sebor2-0/+25
PR c++/58281 - Problem with explicitly instantiated constexpr template functions gcc/testsuite/ChangeLog: 2016-03-15 Martin Sebor <msebor@redhat.com> PR c++/58281 * g++.dg/cpp1y/constexpr-instantiate.C: Add new test. From-SVN: r234246
2016-03-16Daily bump.GCC Administrator1-1/+1
From-SVN: r234245
2016-03-16pr68532.c: Add -fno-common option on hppa*-*-hpux*.John David Anglin2-0/+4
* gcc.c-torture/execute/pr68532.c: Add -fno-common option on hppa*-*-hpux*. From-SVN: r234242
2016-03-15ifcvt-4.c: Add hppa*64*-*-* to skip list.John David Anglin2-1/+3
* gcc.dg/ifcvt-4.c: Add hppa*64*-*-* to skip list. From-SVN: r234241
2016-03-15re PR libfortran/69799 (FAIL: gfortran.dg/coarray_allocate_3.f08 at -O1 and ↵John David Anglin2-0/+7
above) PR libfortran/69799 * gfortran.dg/coarray_allocate_5.f08: Add "-latomic" option if libatomic_available. From-SVN: r234240
2016-03-16Fix thinko in indirect_jump_optimizeAlan Modra2-8/+25
PR rtl-optimization/69195 PR rtl-optimization/47992 * ira.c (indirect_jump_optimize): Ignore artificial defs. Add comments. From-SVN: r234235
2016-03-15re PR c++/70209 (ICE in strip_typedefs, at cp/tree.c:1377)Marek Polacek4-3/+34
PR c++/70209 * tree.c (strip_typedefs): Call strip_typedefs again on the DECL_ORIGINAL_TYPE result. * g++.dg/ext/attribute-may-alias-4.C: New test. From-SVN: r234234
2016-03-15re PR c++/70095 ([C++14] Link error on partially specialized variable template)Jason Merrill3-1/+15
PR c++/70095 * pt.c (instantiate_decl): Fix call to variable_template_p. From-SVN: r234231
2016-03-15Fix more P0184R0 references.Jason Merrill2-2/+2
From-SVN: r234230
2016-03-15re PR c++/70141 (template parameter not deducible in partial specialization ↵Jason Merrill3-2/+34
of template inside template) PR c++/70141 * pt.c (for_each_template_parm_r): Always walk into TYPENAME_TYPE. From-SVN: r234228
2016-03-15pr63384.C: Add -w to dg-options.Alexander Monakov2-1/+6
* g++.dg/pr63384.C: Add -w to dg-options. Remove '-toggle' in -fvar-tracking-assignments-toggle flag. From-SVN: r234227
2016-03-15re PR middle-end/69513 (LTO bootstrap fails with bootstrap-profiled during ↵Eric Botcazou2-5/+11
linking gnat1 in stagefeedback) PR bootstrap/69513 * dwarf2out.c (flush_limbo_die_list): Really flush the limbo list. From-SVN: r234226
2016-03-15ifcvt-4.c: Add -misel for powerpc*.Pat Haugen2-1/+6
* gcc.dg/ifcvt-4.c: Add -misel for powerpc*. From-SVN: r234224
2016-03-15avr.md (rotl<mode>3): Set mode for operand 2.Senthil Kumar Selvaraj2-1/+5
* config/avr/avr.md (rotl<mode>3): Set mode for operand 2. From-SVN: r234223