aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2016-02-29ada-tree.h (DECL_RETURN_VALUE_P): New macro.Eric Botcazou14-40/+190
* gcc-interface/ada-tree.h (DECL_RETURN_VALUE_P): New macro. * gcc-interface/gigi.h (gigi): Remove useless attribute. (gnat_gimplify_expr): Likewise. (gnat_to_gnu_external): Declare. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Factor out code dealing with the expression of external constants into... Invoke gnat_to_gnu_external instead. <E_Variable>: Invoke gnat_to_gnu_external to translate renamed objects when not for a definition. Deal with COMPOUND_EXPR and variables with DECL_RETURN_VALUE_P set for renamings and with the case of a dangling 'reference to a function call in a renaming. Remove obsolete test and adjust associated comment. * gcc-interface/trans.c (Call_to_gnu): Set DECL_RETURN_VALUE_P on the temporaries created to hold the return value, if any. (gnat_to_gnu_external): ...this. New function. * gcc-interface/utils.c (create_var_decl): Detect a constant created to hold 'reference to function call. * gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Add folding for COMPOUND_EXPR in the DECL_RETURN_VALUE_P case. From-SVN: r233804
2016-02-29re PR tree-optimization/69720 (wrong code at -O3 on x86_64-linux-gnu)Richard Biener4-9/+63
2016-02-29 Richard Biener <rguenther@suse.de> PR tree-optimization/69720 * tree-vect-loop.c (get_initial_def_for_reduction): Avoid the adjustment_def path for possibly vectorized defs. (vect_create_epilog_for_reduction): Handle vectorized initial defs properly. * gcc.dg/vect/vect-outer-pr69720.c: New testcase. From-SVN: r233803
2016-02-29Daily bump.GCC Administrator1-1/+1
From-SVN: r233801
2016-02-28re PR fortran/68147 (Potential incorrect code generation for string ↵Thomas Koenig4-2/+26
self-assignment) 2016-02-28 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/68147 PR fortran/47674 * frontend-passes.c (realloc_string_callback): Don't set walk_subtrees. 2016-02-28 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/68147 PR fortran/47674 * gfortran.dg/realloc_on_assign_26.f90: New test case. From-SVN: r233797
2016-02-28dump-parse-tree.c (show_code_node): Print association list of a block if ↵Thomas Koenig2-0/+17
present. 2016-02-28 Thomas Koenig <tkoenig@gcc.gnu.org> * dump-parse-tree.c (show_code_node): Print association list of a block if present. Handle EXEC_END_BLOCK. From-SVN: r233796
2016-02-28re PR fortran/56007 (Remarkably bad error message with DO array=1,2)Harald Anlauf6-1/+43
2016-02-28 Harald Anlauf <anlauf@gmx.de> Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/56007 * match.c (gfc_match_iterator): Add diagnostic for array variable as do loop index. * gfortran.dg/coarray_8.f90: Adjust error message. * gfortran.dg/pr56007.f90: New test. * gfortran.dg/pr56007.f: New test. Co-Authored-By: Jerry DeLisle <jvdelisle@gcc.gnu.org> From-SVN: r233795
2016-02-28Add a test for PR tree-optimization/69989H.J. Lu2-0/+28
PR tree-optimization/69989 * gcc.dg/torture/pr69989.c: New test. From-SVN: r233792
2016-02-28* config/i386/cygming.h (STACK_REALIGN_DEFAULT): Define.Eric Botcazou4-0/+48
From-SVN: r233791
2016-02-28re PR fortran/60126 (Internal compiler error with code using pointer ↵Harald Anlauf2-0/+23
reshaping (gfortran 4.8.2)) 2016-02-28 Harald Anlauf <anlauf@gmx.de> PR fortran/60126 * gfortran.dg/pr60126.f90: New test. From-SVN: r233790
2016-02-27RevertJeff Law5-45/+22
2016-02-26 Richard Biener <rguenther@suse.de> Jeff Law <law@redhat.com> PR tree-optimization/69740 * cfghooks.c (remove_edge): Request loop fixups if we delete an edge that might turn an irreducible loop into a natural loop. Revert 2016-02-26 Richard Biener <rguenther@suse.de> Jeff Law <law@redhat.com> PR tree-optimization/69740 * gcc.c-torture/compile/pr69740-1.c: New test. * gcc.c-torture/compile/pr69740-2.c: New test. From-SVN: r233787
2016-02-28Daily bump.GCC Administrator1-1/+1
From-SVN: r233786
2016-02-272016-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>Jerry DeLisle2-2/+2
Fix ChangeLogs From-SVN: r233783
2016-02-27re PR fortran/69910 (ICE with NEWUNIT)Jerry DeLisle4-7/+29
2016-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/69110 * io.c (gfc_match_open): Check that open status is an expression constant before comparing string to 'scratch' with NEWUNIT. * gfortran.dg/newunit_4.f90: New test. Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org> From-SVN: r233782
2016-02-27re PR target/69613 (wrong code with -O and simple 128bit arithmetics and ↵Jakub Jelinek3-2/+11
vectors @ aarch64) PR target/69613 PR rtl-optimization/69886 * gcc.dg/torture/pr69886.c: Add -w -Wno-psabi to dg-options. * gcc.dg/torture/pr69613.c: Likewise. Guard -mavx with avx_runtime target. From-SVN: r233781
2016-02-27Right size for eventsAlessandro Fanfarillo3-2/+10
From-SVN: r233779
2016-02-27re PR rtl-optimization/69896 (wrong code with -frename-registers @ x64_64)Jakub Jelinek2-1/+7
PR rtl-optimization/69896 * tree-vect-generic.c (get_compute_type): Avoid single element vector types. From-SVN: r233777
2016-02-27Daily bump.GCC Administrator1-1/+1
From-SVN: r233775
2016-02-26Rename the tuning option and related functions to enable the Newton series ↵Evandro Menezes7-25/+41
for the reciprocal square root to reflect its approximative characteristic. gcc/ * config/aarch64/aarch64-protos.h (aarch64_emit_swrsqrt): Rename function to "aarch64_emit_approx_rsqrt". * config/aarch64/aarch64-tuning-flags.def: Rename tuning flag to AARCH64_EXTRA_TUNE_APPROX_RSQRT. * config/aarch64/aarch64.c (exynosm1_tunigs): Use new flag name. (xgene1_tunings): Likewise. (use_rsqrt_p): Likewise. (aarch64_emit_swrsqrt): Use new function name. * config/aarch64/aarch64-simd.md (aarch64_rsqrts_*): Likewise. * config/aarch64/aarch64.opt (mlow-precision-recip-sqrt): Reword the text explaining this option. * doc/invoke.texi (-mlow-precision-recip-sqrt): Likewise. From-SVN: r233772
2016-02-26PR tree-optimization/15826 - don't use "if" to extract a single bitMartin Sebor2-0/+41
PR tree-optimization/15826 - don't use "if" to extract a single bit bit-field 2016-02-26 Martin Sebor <msebor@redhat.com> PR tree-optimization/15826 * gcc.dg/tree-ssa/pr15826.c: New test. From-SVN: r233771
2016-02-26re PR target/69969 (Function attribute no-vsx)Jakub Jelinek4-1/+21
PR target/69969 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't complain about -mallow-movmisalign without -mvsx if TARGET_ALLOW_MOVMISALIGN was not set explicitly. * gcc.target/powerpc/pr69969.c: New test. From-SVN: r233767
2016-02-26PR c++/15766 - bad parse error recovery (2 bugs)Martin Sebor2-2/+13
gcc/testsuite/ChangeLog: 2016-02-26 Martin Sebor <msebor@redhat.com> PR c++/15766 * g++.old-deja/g++.other/decl5.C: Add a test case. From-SVN: r233765
2016-02-26config.gcc: Add x86_64-*-rtems*.Joel Sherrill3-0/+38
2016-02-26 Joel Sherrill <joel@rtems.org> * config.gcc: Add x86_64-*-rtems*. * gcc/config/i386/rtems-64.h: New file. From-SVN: r233761
2016-02-26config.gcc: Add aarch64-*-rtems*.Joel Sherrill3-2/+42
2016-02-26 Joel Sherrill <joel@rtems.org> * config.gcc: Add aarch64-*-rtems*. * gcc/config/aarch64/rtems.h: New file. From-SVN: r233760
2016-02-26re PR c++/69958 (sizeof... computes wrong size)Jason Merrill4-8/+108
PR c++/69958 * pt.c (make_argument_pack): New. (tsubst_copy) [SIZEOF_EXPR]: Handle partial expansion. (tsubst_copy_and_build): Likewise. From-SVN: r233758
2016-02-26powerpc: Handle DImode rotatert implemented with rlwinm (PR69946)Segher Boessenkool4-2/+54
Some DImode rotate-right-and-mask can be implemented best with a rlwinm instruction: those that could be a lshiftrt instead of a rotatert, while the mask is not right-aligned. Why the rotate in the testcase is not optimised to a plain shift is another question, but we need to handle it here anyway. We compute the shift amount for a 64-bit rotate. This is 32 too high in this case; if we print using %h that is masked out (and this doesn't silently let through invalid instructions, everything is checked by rs6000_is_valid_shift_mask which is much more thorough). PR target/69946 * config/rs6000/rs6000.c (rs6000_insn_for_shift_mask): Print rlwinm shift amount using %h. Add comment. gcc/testsuite/ * gcc.target/powerpc/pr69946.c: New file. From-SVN: r233755
2016-02-26re PR tree-optimization/69740 (gcc ICE at -O2 and above on valid code on ↵Richard Biener5-1/+60
x86_64-linux-gnu in "verify_loop_structure") PR tree-optimization/69740 * cfghooks.c (remove_edge): Request loop fixups if we delete an edge that might turn an irreducible loop into a natural loop. PR tree-optimization/69740 * gcc.c-torture/compile/pr69740-1.c: New test. * gcc.c-torture/compile/pr69740-2.c: New test. Co-Authored-By: Jeff Law <law@redhat.com> From-SVN: r233754
2016-02-26[PR 69920] Prevent SRA from leaving a removed SSA_NAME in ILMartin Jambor5-1/+48
2016-02-26 Martin Jambor <mjambor@suse.cz> PR middle-end/69920 * tree-sra.c (sra_modify_assign): Do not remove loads of uninitialized aggregates to SSA_NAMEs. testsuite/ * gcc.dg/torture/pr69932.c: New test. * gcc.dg/torture/pr69936.c: Likewise. From-SVN: r233753
2016-02-26S/390: PR69709 Fix risbg splitterAndreas Krebbel4-4/+71
This fixes a wrong code generation problem with the splitters introduced with that patch: https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01840.html The target operand is used as temporary. This fails if it matches the source of the left shift which is read after writing the temporary. Thanks to Dominik for debugging it and thanks to Richard for the fix! Bootstrapped and regtested on s390x with-arch=z13. Bye, -Andreas- gcc/ChangeLog: 2016-02-26 Richard Henderson <rth@redhat.com> PR target/69709 * config/s390/s390.md (risbg and risbgn splitters): Allocate new pseudo in case the target rtx matches the source of the left shift. gcc/testsuite/ChangeLog: 2016-02-26 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/69709 * gcc.target/s390/pr69709.c: New test. From-SVN: r233752
2016-02-26[hsa/69568] Fix ld instruction type for packed dataMartin Jambor5-3/+24
2016-02-26 Martin Jambor <mjambor@suse.cz> PR hsa/69568 * hsa.h (hsa_type_packed_p): Declare. * hsa.c (hsa_type_packed_p): New function. * hsa-gen.c (mem_type_for_type): Use unsigned type for packed loads. (gen_hsa_insns_for_store): Use hsa_type_packed_p. * hsa-brig.c (emit_basic_insn): Likewise. From-SVN: r233751
2016-02-26[hsa/69674] Make testsuite libgomp.c/for-3.c compile with -m32Martin Jambor2-4/+20
2016-02-26 Martin Jambor <mjambor@suse.cz> pr hsa/69674 * hsa-gen.c (gen_hsa_phi_from_gimple_phi): Use proper hsa type for pointers. (gen_hsa_addr): Allow integer constants in TMR_INDEX2. From-SVN: r233750
2016-02-26[hsa] Satisfy conditional move operand type constrainsMartin Jambor4-17/+41
2016-02-26 Martin Jambor <mjambor@suse.cz> * hsa.h (is_a_helper): New overload for hsa_op_immed for hsa_op_with_type operands. (hsa_unsigned_type_for_type): Declare. * hsa.c (hsa_unsigned_type_for_type): New function. * hsa-gen.c (gen_hsa_binary_operation): Use hsa_unsigned_type_for_type. (gen_hsa_insns_for_operation_assignment): Satisfy constrains of the finalizer. Do not emit extra move. From-SVN: r233749
2016-02-26[hsa] Fail in presence of atomic operations in private segmentMartin Jambor2-2/+12
2016-02-26 Martin Jambor <mjambor@suse.cz> * hsa-gen.c (gen_hsa_ternary_atomic_for_builtin): Fail in presence of atomic operations in private segment. From-SVN: r233748
2016-02-26re PR go/69966 (libgo: Port syscall.SetsockoptUcred from golang)Ian Lance Taylor1-1/+1
PR go/69966 syscall: Add new Getsockopt functions. Add GetsockoptICMPv6Filter, GetsockoptIPv6MTUInfo, GetsockoptUcred as appropriate. These functions exist in the master library. For GCC PR 69966. Reviewed-on: https://go-review.googlesource.com/19960 From-SVN: r233747
2016-02-26[omp, hsa] Do not gridify simd constructsMartin Jambor2-4/+29
2016-02-26 Martin Jambor <mjambor@suse.cz> * omp-low.c (grid_find_ungridifiable_statement): Store problematic statements to wi->info. Also disallow omp simd constructs. (grid_target_follows_gridifiable_pattern): Use wi.info to dump reason for not gridifying. Dump special string for omp_for. From-SVN: r233746
2016-02-26[AArch64] Set TREE_TARGET_GLOBALS in aarch64_set_current_function when new ↵Kyrylo Tkachov4-1/+31
tree is the default node to recalculate optab availability PR target/69245 * config/aarch64/aarch64.c (aarch64_set_current_function): Save/restore target globals when switching to target_option_default_node. * gcc.target/aarch64/pr69245_1.c: New test. From-SVN: r233745
2016-02-26[AArch64] PR target/69613: Return zero TARGET_SHIFT_TRUNCATION_MASK when ↵Kyrylo Tkachov4-1/+53
SHIFT_COUNT_TRUNCATED is false PR target/69613 * config/aarch64/aarch64.c (aarch64_shift_truncation_mask): Return 0 if !SHIFT_COUNT_TRUNCATED. * gcc.dg/torture/pr69613.c: New test. From-SVN: r233744
2016-02-26re PR rtl-optimization/69891 (wrong code with -mstringop-strategy=libcall @ ↵Jakub Jelinek4-0/+44
i686) PR rtl-optimization/69891 * dse.c (scan_insn): If we can't figure out memset arguments or they are non-constant, call clear_rhs_from_active_local_stores. * gcc.target/i386/pr69891.c: New test. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> From-SVN: r233743
2016-02-26Fix ChangeLog formattingWilliam Schmidt1-1/+1
From-SVN: r233742
2016-02-26Update ChangeLog to mention pr61397William Schmidt1-0/+1
From-SVN: r233740
2016-02-26p8vector-ldst.c: Adjust to test desired functionality for both 32-bit and ↵Michael Meissner2-85/+95
64-bit. 2016-02-26 Michael Meissner <meissner@linux.vnet.ibm.com> Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.target/powerpc/p8vector-ldst.c: Adjust to test desired functionality for both 32-bit and 64-bit. Co-Authored-By: Bill Schmidt <wschmidt@linux.vnet.ibm.com> From-SVN: r233739
2016-02-26Mention clog10{,f,l} in documentation (Builtins section)Martin Liska2-0/+12
* doc/extend.texi: Mention clog10, clog10f an clog10l in Builtins section. From-SVN: r233738
2016-02-26Replace ENABLE_CHECKING with CHECKING_P in dwarf2outMartin Liska3-4/+11
* dwarf2out.c (new_loc_descr): Replace ENABLE_CHECKING with CHECKING_P. (resolve_args_picking_1): Likewise. * dwarf2out.h (struct GTY): Likewise. From-SVN: r233737
2016-02-26Replace ENABLE_CHECKING macro with flag_checking in HSAMartin Liska3-16/+22
* hsa-gen.c (generate_hsa): Replace ENABLE_CHECKING macro with flag_checking. * hsa-regalloc.c (linear_scan_regalloc): Likewise. From-SVN: r233736
2016-02-26Mention --enable-valgrind-annotations in install.texiMarkus Trippelsdorf2-0/+9
Martin Liska <mliska@suse.cz> * doc/install.texi: Mention --enable-valgrind-annotations. Co-Authored-By: Martin Liska <mliska@suse.cz> From-SVN: r233735
2016-02-26re PR target/69551 (Wrong code with single element vector insert)Richard Biener4-0/+41
2016-02-26 Richard Biener <rguenther@suse.de> PR tree-optimization/69551 * tree-ssa-structalias.c (get_constraint_for_ssa_var): When looking through aliases adjust DECL_PT_UID to refer to the ultimate alias target. * gcc.dg/torture/pr69951.c: New testcase. From-SVN: r233734
2016-02-25re PR c++/69889 (ICE: in assign_temp, at function.c:961)Jason Merrill6-11/+72
PR c++/69889 * cp-tree.h (AGGR_INIT_FROM_THUNK_P): New. * tree.c (build_aggr_init_expr): Set it. * semantics.c (simplify_aggr_init_expr): Check it. * cp-gimplify.c (cp_genericize_r): Don't walk into a call/aggr_init from a thunk. From-SVN: r233733
2016-02-26Daily bump.GCC Administrator1-1/+1
From-SVN: r233732
2016-02-25Do not gather mem stats in run_exit_handles (PRMartin Liska4-1/+16
PR middle-end/69919 * alloc-pool.c (after_memory_report): New variable. * alloc-pool.h (base_pool_allocator ::release): Do not use the infrastructure if after_memory_report. * toplev.c (toplev::main): Mark after memory report. From-SVN: r233722
2016-02-25re PR c++/69842 (Parameter deduction in polymorphic lambdas)Jason Merrill4-20/+43
PR c++/69842 * method.c (forward_parm): Handle parameter packs. * lambda.c (maybe_add_lambda_conv_op): Use it for them. From-SVN: r233719
2016-02-25re PR c++/67364 ("accessing uninitialized member" error in constexpr context)Jason Merrill3-1/+23
PR c++/67364 * constexpr.c (cxx_eval_component_reference): Don't complain about unevaluated empty classes. From-SVN: r233716