1. 08 Mar, 2017 11 commits
  2. 07 Mar, 2017 11 commits
  3. 06 Mar, 2017 18 commits
    • Fix typo. · 9a1972f1
      From-SVN: r245937
      John David Anglin committed
    • re PR c++/79821 (SEGV in cc1plus compiling 64-bit stdc++.h.gch/O2g.gch) · edca997e
      	PR c++/79821
      	* dwarf2out.h (dw_vec_const): Change array type from unsigned char *
      	to void * for PCH reasons.
      	* dwarf2out.c (output_loc_operands, output_die): Cast
      	v.val_vec.array to unsigned char *.
      
      From-SVN: r245932
      Jakub Jelinek committed
    • PR target 77850 · 5935a7c4
      	PR target 77850
      	* config/pa/pa-64.h (PAD_VARARGS_DOWN): Don't pad down complex and
      	vector types.
      
      From-SVN: r245931
      John David Anglin committed
    • Fix the last ChangeLog entry · f8386dae
      From-SVN: r245929
      Vladimir Makarov committed
    • re PR rtl-optimization/79571 (ICE in Max. number of generated reload insns per… · feca7b89
      re PR rtl-optimization/79571 (ICE in Max. number of generated reload insns per insn is achieved (90))
      
      2017-03-06  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/79571
      	* lra-constraints.c (process_alt_operands): Claculate static
      	reject and subtract it from overal when there will be only address
      	reloads.
      
      2017-03-06  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/79571
      	* gcc.target/i386/pr79571.c: New.
      
      From-SVN: r245928
      Vladimir Makarov committed
    • PR c++/79796 - ICE with NSDMI and this pointer · bdbbf28d
      	PR c++/79796 - ICE with NSDMI and this pointer
      	* call.c (build_over_call): Handle NSDMI with a 'this' by calling
      	replace_placeholders.
      
      	* g++.dg/cpp0x/nsdmi13.C: New test.
      
      From-SVN: r245927
      Marek Polacek committed
    • Set incoming stack boundary to 128 for 64-bit targets · 52564551
      For 64-bit targets, the incoming stack of interrupt handler is aligned
      to 16 bytes.  Update ix86_minimum_incoming_stack_boundary to set the
      incoming stack boundary of interrupt handler to 128 for 64-bit targets.
      
      gcc/
      
      2017-03-06  Julia Koval  <julia.koval@intel.com>
      
      	PR target/79793
      	* config/i386/i386.c (ix86_minimum_incoming_stack_boundary): Set
      	incoming stack boundary to 128 for 64-bit targets.
      
      gcc/testsuite/
      
      2017-03-06  Julia Koval  <julia.koval@intel.com>
      
      	PR target/79793
      	 * gcc.target/i386/interrupt-12.c: Update scan-assembler-times
      	 directives.
      	 * gcc.target/i386/interrupt-13.c: Ditto.
      	 * gcc.target/i386/interrupt-14.c: Ditto.
      	 * gcc.target/i386/interrupt-15.c: Ditto.
      
      From-SVN: r245926
      Julia Koval committed
    • re PR c++/79822 (ICE with void statement expression) · 345edb37
      	PR c++/79822
      	* constexpr.c (cxx_eval_statement_list): Treat empty ({ }) like
      	({ (void) 0; }).
      
      	* g++.dg/cpp0x/constexpr-79822.C: New test.
      
      From-SVN: r245925
      Jakub Jelinek committed
    • Revert "Allow deduction guides to look into primary template." · 90d9a8e6
      	* cp-tree.h, parser.c, pt.c, search.c: Revert.
      
      From-SVN: r245924
      Jason Merrill committed
    • re PR tree-optimization/79887 (ICE in set_uid_loop_bbs, at tree-vectorizer.c:482) · a8d25fd0
      2017-03-06  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/79894
      	* tree-vectorizer.c (vectorize_loops): Set loop_vectorized_call
      	to NULL after folding it.
      
      	* gcc.dg/vect/pr79887.c: New testcase.
      
      From-SVN: r245923
      Richard Biener committed
    • re PR tree-optimization/79824 (Failure to peel for gaps leads to read beyond mapped memory) · 522fcdd7
      2017-03-06  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/79824
      	* tree-vect-stmts.c (get_group_load_store_type): Fix alignment
      	check disabling peeling for gaps.
      
      	* gcc.dg/vect/pr79824-1.c: New testcase.
      	* gcc.dg/vect/pr79824-2.c: Likewise.
      
      From-SVN: r245922
      Richard Biener committed
    • Add check_effective_target_gettimeofday and use it in gcc.dg/lto/pr60449_0.c. · 54649631
      gcc/
      	* doc/sourcebuild.texi (Effective-Target Keywords, Environment
      	attributes): Document gettimeofday.
      
      gcc/testsuite/
      
      	* gcc.dg/lto/pr60449_0.c: Add dg-require-effective-target for
      	gettimeofday.  Remove dg-skip-if for AVR.
      	* lib/target-supports.exp (check_effective_target_gettimeofday):
      	New proc.
      
      From-SVN: r245921
      Toma Tabacu committed
    • re PR fortran/79894 (ICE in gfc_add_modify_loc, at fortran/trans.c:159) · 1b31fca7
      2017-03-06  Richard Biener  <rguenther@suse.de>
      
      	PR fortran/79894
      	* trans.c (gfc_add_modify_loc): Weaken assert.
      
      From-SVN: r245919
      Richard Biener committed
    • S/390: Disable vectorization for loops with few iterations · 6cc61b5a
      The following patch defines the PARAM_MIN_VECT_LOOP_BOUND parameter in
      the s390 backend.  It helps with the vectorization epilogue problem
      described here [1].
      I see an overall performance increase of > 1% in SPECfp2006, yet some
      cases like cactusADM regress.  This seems to be caused by the vectorizer
      creating an epilogue guard for one more iteration than before, which, in
      turn, causes e.g. predcom to run on the epilogue that it used to ignore
      before ("Loop iterates only 1 time, nothing to do.").  Subsequent,
      minor, effects cause an eventual slowdown.
      
      Until the reason for the bad epilogue code is understood, this patch
      mitigates the problem.  When investigating the issue, I stumbled across
      an attempt to vectorize the epilogue itself as well as combine it with
      the vectorized loop in addition to vector masking [2].  A similar
      approach might also help here.  My original observation of high register
      pressure within the epilogue still stands.  In this specific case, it
      would most likely suffice to save all registers once, run the epilogue
      and restore the registers.  I'm pretty sure this would be faster than
      the "spill fest" that's currently happening.
      
      Regards
       Robin
      
      [1] https://gcc.gnu.org/ml/gcc/2017-01/msg00234.html
      [2] https://gcc.gnu.org/ml/gcc-patches/2016-05/msg01562.html
      
      gcc/ChangeLog:
      
      2017-03-06  Robin Dapp  <rdapp@linux.vnet.ibm.com>
      
      	* config/s390/s390.c (s390_option_override_internal): Set
      	PARAM_MIN_VECT_LOOP_BOUND
      
      From-SVN: r245918
      Robin Dapp committed
    • S/390: Change 2-byte NOPs · 4bbc8970
      The following patch changes "nopr %r7" to "nopr %r0" which is
      advantageous from a hardware perspective. It will only be emitted for
      hotpatching and should not impact normal code.
      
      gcc/ChangeLog:
      
      2017-03-06  Robin Dapp  <rdapp@linux.vnet.ibm.com>
      
      	* config/s390/s390.c (s390_asm_output_function_label): Use nopr %r0.
      	* config/s390/s390.md: Likewise.
      
      gcc/testsuite/ChangeLog:
      
      2017-03-06  Robin Dapp  <rdapp@linux.vnet.ibm.com>
      
      	* gcc.target/s390/hotpatch-1.c: Check for nopr %r0.
      	* gcc.target/s390/hotpatch-10.c: Likewise.
      	* gcc.target/s390/hotpatch-11.c: Likewise.
      	* gcc.target/s390/hotpatch-12.c: Likewise.
      	* gcc.target/s390/hotpatch-13.c: Likewise.
      	* gcc.target/s390/hotpatch-14.c: Likewise.
      	* gcc.target/s390/hotpatch-15.c: Likewise.
      	* gcc.target/s390/hotpatch-16.c: Likewise.
      	* gcc.target/s390/hotpatch-17.c: Likewise.
      	* gcc.target/s390/hotpatch-18.c: Likewise.
      	* gcc.target/s390/hotpatch-19.c: Likewise.
      	* gcc.target/s390/hotpatch-2.c: Likewise.
      	* gcc.target/s390/hotpatch-26.c: Likewise.
      	* gcc.target/s390/hotpatch-27.c: Likewise.
      	* gcc.target/s390/hotpatch-28.c: Likewise.
      	* gcc.target/s390/hotpatch-3.c: Likewise.
      	* gcc.target/s390/hotpatch-4.c: Likewise.
      	* gcc.target/s390/hotpatch-5.c: Likewise.
      	* gcc.target/s390/hotpatch-6.c: Likewise.
      	* gcc.target/s390/hotpatch-7.c: Likewise.
      	* gcc.target/s390/hotpatch-8.c: Likewise.
      	* gcc.target/s390/hotpatch-9.c: Likewise.
      
      From-SVN: r245917
      Robin Dapp committed
    • re PR c++/64574 (ICE (stack overflow SEGV) with bad template specialization) · 5f215a70
      2017-03-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/64574
      	* g++.dg/template/crash125.C: New.
      
      From-SVN: r245916
      Paolo Carlini committed
    • re PR target/79812 (ICE in simplify_binary_operation_1, at simplify-rtx.c:3586) · 296cc393
      	PR target/79812
      	* config/i386/sse.md (VI8F_256_512): Remove mode iterator.
      	(<avx2_avx512>_perm<mode>): Rename to ...
      	(avx2_perm<mode>): ... this.  Use VI8F_256 iterator instead
      	of VI8F_256_512.
      	(<avx512>_perm<mode>_mask): Rename to ...
      	(avx512vl_perm<mode>_mask): ... this.  Use VI8F_256 iterator instead
      	of VI8F_256_512.
      	(<avx2_avx512>_perm<mode>_1<mask_name>): Rename to ...
      	(avx2_perm<mode>_1<mask_name): ... this.  Use VI8F_256 iterator
      	instead of VI8F_256_512.
      	(avx512f_perm<mode>): New define_expand.
      	(avx512f_perm<mode>_mask): Likewise.
      	(avx512f_perm<mode>_1<mask_name>): New define_insn.
      	(<avx512>_vec_dup<mode>_1): Fix up vec_select mode.
      
      	* gcc.target/i386/avx512f-vpermq-imm-3.c: New test.
      
      From-SVN: r245915
      Jakub Jelinek committed
    • MIPS: Force o32 ABI for inline-memcpy-3.c. · ca8942a3
      gcc/testsuite/
      
      	* gcc.target/mips/inline-memcpy-3.c (dg-options): Add -mabi=32.
      
      From-SVN: r245914
      Toma Tabacu committed