Skip to content
Snippets Groups Projects
  1. Apr 25, 2018
  2. Apr 24, 2018
    • Steven G. Kargl's avatar
      re PR fortran/85520 (Out of memory when declaring a character with len << 0) · 58da192e
      Steven G. Kargl authored
      2018-04-24  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/85520
      	* decl.c (gfc_match_char_spec): Check for negative length and set to 0.
      
      2018-04-24  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/85520
      	* gfortran.dg/pr85520.f90: New test.
      
      From-SVN: r259623
      58da192e
    • Segher Boessenkool's avatar
      rs6000: Fix __powikf2 and __abskf2 spelling · 08417efa
      Segher Boessenkool authored
      Both of these libfuncs had a "tkf" misspelling, which caused
      gcc.target/powerpc/pr85456.c to fail (there is no test for __abskf2).
      
      
      	* config/rs6000/rs6000.c (init_float128_ieee): Fix spelling mistakes
      	in __abskf2 and __powikf2.
      
      From-SVN: r259622
      08417efa
    • H.J. Lu's avatar
      x86: Update __CET__ check · ffc2fc06
      H.J. Lu authored
      __CET__ has been changed by revision 259522:
      
      commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Fri Apr 20 13:30:13 2018 +0000
      
          Define __CET__ for -fcf-protection and remove -mibt
      
      to
      
          (__CET__ & 1) != 0: -fcf-protection=branch or -fcf-protection=full
          (__CET__ & 2) != 0: -fcf-protection=return or -fcf-protection=full
      
      We should check (__CET__ & 2) != 0 for shadow stack.
      
      libgcc/
      
      	* config/i386/linux-unwind.h: Add (__CET__ & 2) != 0 check
      	when including "config/i386/shadow-stack-unwind.h".
      
      libitm/
      
      	* config/x86/sjlj.S (_ITM_beginTransaction): Add
      	(__CET__ & 2) != 0 check for shadow stack.
      	(GTM_longjmp): Likewise.
      
      From-SVN: r259621
      ffc2fc06
    • H.J. Lu's avatar
      x86/CET: Add -fcf-protection to STAGE4_CFLAGS · e59133c3
      H.J. Lu authored
      Since profiledbootstrap uses
      
      STAGEfeedback_CFLAGS = $(STAGE4_CFLAGS) -fprofile-use
      
      add
      
      STAGE4_CFLAGS += -fcf-protection -mcet
      
      to bootstrap-cet.mk to support profiledbootstrap with CET.
      
      	PR bootstrap/85490
      	* bootstrap-cet.mk (STAGE4_CFLAGS): New.
      
      From-SVN: r259620
      e59133c3
    • Kyrylo Tkachov's avatar
      [AArch64] PR target/85512: Tighten SIMD right shift immediate constraints · 0603375c
      Kyrylo Tkachov authored
      In this testcase it is possible to generate an invalid SISD shift of zero:
      Error: immediate value out of range 1 to 64 at operand 3 -- `sshr v9.2s,v0.2s,0'
      
      The SSHR and USHR instructions require a shift from 1 up to the element size.
      However our constraints on the scalar shifts that generate these patterns
      allow a shift amount of zero as well. The pure GP-reg ASR and LSR instructions allow a shift amount of zero.
      
      It is unlikely that a shift of zero will survive till the end of compilation, but it's not impossible, as this PR shows.
      
      The patch tightens up the constraints in the offending patterns by adding two new constraints
      that allow shift amounts [1,32] and [1,64] and using them in *aarch64_ashr_sisd_or_int_<mode>3
      and *aarch64_lshr_sisd_or_int_<mode>3.
      The left-shift SISD instructions SHL and USHL allow a shift amount of zero so don't need adjustment
      The vector shift patterns that map down to SSHR and USHR already enforce the correct immediate range. 
      
              PR target/85512
              * config/aarch64/constraints.md (Usg, Usj): New constraints.
              * config/aarch64/iterators.md (cmode_simd): New mode attribute.
              * config/aarch64/aarch64.md (*aarch64_ashr_sisd_or_int_<mode>3):
              Use the above on operand 2.  Reindent.
              (*aarch64_lshr_sisd_or_int_<mode>3): Likewise.
      
              * gcc.dg/pr85512.c: New test.
      
      From-SVN: r259614
      0603375c
    • H.J. Lu's avatar
      x86/CET: Remove the -mcet command-lint option · 231baae2
      H.J. Lu authored
      With revision 259496:
      
      commit b1384095a7c1d06a44b70853372ebe037b2f7867
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Thu Apr 19 15:15:04 2018 +0000
      
          x86: Enable -fcf-protection with multi-byte NOPs
      
      -fcf-protection no longer depens on -mcet and with revision 259522:
      
      commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Fri Apr 20 13:30:13 2018 +0000
      
          Define __CET__ for -fcf-protection and remove -mibt
      
      -mcet becomes an alias for -mshstk.  Since all usages of -mcet and
      -mno-cet have either been removed or replaced, we can remove the -mcet
      command-lint option.
      
      	PR target/85485
      	* common/config/i386/i386-common.c (ix86_handle_option): Don't
      	handle OPT_mcet.
      	* config/i386/i386.opt (mcet): Removed.
      	* doc/install.texi: Remove -mcet documentation.
      	* doc/invoke.texi: Likewise.
      
      From-SVN: r259613
      231baae2
    • H.J. Lu's avatar
      x86/CET tests: Remove -mcet/-mno-cet or replace -mcet with -mshstk · d16d033b
      H.J. Lu authored
      With revision 259496:
      
      commit b1384095a7c1d06a44b70853372ebe037b2f7867
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Thu Apr 19 15:15:04 2018 +0000
      
          x86: Enable -fcf-protection with multi-byte NOPs
      
      -fcf-protection no longer depens on -mcet and with revision 259522:
      
      commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Fri Apr 20 13:30:13 2018 +0000
      
          Define __CET__ for -fcf-protection and remove -mibt
      
      -mcet becomes an alias for -mshstk.
      
      We can remove -mcet/-mno-cet where they are unused and replace -mcet
      with -mshstk where -mcet is used as an alias for -mshstk.
      
      	PR target/85485
      	* g++.dg/cet-notrack-1.C (dg-options): Remove -mcet.
      	* g++.dg/torture/pr85334.C (dg-additional-options): Likwise.
      	* gcc.dg/pr85388-1.c (dg-options): Likwise.
      	* gcc.dg/pr85388-2.c (dg-options): Likwise.
      	* gcc.dg/pr85388-3.c (dg-options): Likwise.
      	* gcc.dg/pr85388-4.c (dg-options): Likwise.
      	* gcc.dg/pr85388-5.c (dg-options): Likwise.
      	* gcc.dg/pr85388-6.c (dg-options): Likwise.
      	* gcc.dg/torture/pr85397-1.c (dg-additional-options): Likwise.
      	* gcc.target/i386/attr-nocf-check-1a.c (dg-options): Likwise.
      	* gcc.target/i386/attr-nocf-check-3a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-label.c (dg-options): Likwise.
      	* gcc.target/i386/cet-label-2.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-1b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-2a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-2b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-3.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-4b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-5a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-5b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-6a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-6b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-7.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-icf-2.c (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-icf-4.c (dg-options): Likwise.
      	* gcc.target/i386/cet-property-1.c (dg-options): Likwise.
      	* gcc.target/i386/cet-property-2.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-1.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-2.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-3.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-4.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-5.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-6a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-sjlj-6b.c (dg-options): Likwise.
      	* gcc.target/i386/cet-switch-1.c (dg-options): Likwise.
      	* gcc.target/i386/cet-switch-2.c (dg-options): Likwise.
      	* gcc.target/i386/cet-switch-3.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-11.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-12.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-attr-12.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-attr-13.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-attr-14.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-attr-15.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-attr-16.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-extern-8.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-extern-9.c (dg-options): Likwise.
      	* gcc.target/i386/indirect-thunk-extern-10.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-1.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-2.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-3.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-4.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-5.c (dg-options): Likwise.
      	* gcc.target/i386/pr82659-6.c (dg-options): Likwise.
      	* gcc.target/i386/pr84146.c (dg-options): Likwise.
      	* gcc.target/i386/pr85403.c (dg-options): Likwise.
      	* gcc.target/i386/pr85404.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-3.c (dg-options): Replace -mcet
      	with -mshstk.
      	* gcc.target/i386/cet-intrin-5.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-6.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-7.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-8.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-9.c (dg-options): Likwise.
      	* gcc.target/i386/cet-intrin-10.c (dg-options): Likwise.
      	* gcc.target/i386/cet-rdssp-1.c (dg-options): Likwise.
      	* (dg-options): Likwise.
      	* gcc.target/i386/cet-notrack-1a.c (dg-options): Remove
      	-mno-cet.
      	* gcc.target/i386/cet-notrack-4a.c (dg-options): Likwise.
      	* gcc.target/i386/cet-label-3.c: Removed.
      	* gcc.target/i386/cet-property-3.c: Likwise.
      	* gcc.target/i386/cet-sjlj-7.c: Likwise.
      
      From-SVN: r259612
      d16d033b
    • H.J. Lu's avatar
      Don't bootstrap GCC with -mcet · 48f64e05
      H.J. Lu authored
      With revision 259496:
      
      commit b1384095a7c1d06a44b70853372ebe037b2f7867
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Thu Apr 19 15:15:04 2018 +0000
      
          x86: Enable -fcf-protection with multi-byte NOPs
      
      -fcf-protection no longer requires -mcet.
      
      config/
      
      	PR target/85485
      	* bootstrap-cet.mk (STAGE2_CFLAGS): Remove -mcet.
      	(STAGE3_CFLAGS): Likewise.
      
      gcc/
      
      	PR target/85485
      	* doc/install.texi: Remove -mcet from bootstrap-cet.
      
      From-SVN: r259611
      48f64e05
    • H.J. Lu's avatar
      Regenerate configure of target libraries · 7b47ecf2
      H.J. Lu authored
      	* configure: Regenerated.
      
      From-SVN: r259610
      7b47ecf2
    • Jakub Jelinek's avatar
      re PR target/85511 ([X86] Using __builtin_ia32_writeeflags_u32 in 64-bit mode... · e8ac3359
      Jakub Jelinek authored
      re PR target/85511 ([X86] Using __builtin_ia32_writeeflags_u32 in 64-bit mode causes internal compiler error)
      
      	PR target/85511
      	* config/i386/i386.c (ix86_init_mmx_sse_builtins): Don't define
      	__builtin_ia32_readeflags_u32 and __builtin_ia32_writeeflags_u32
      	if TARGET_64BIT.
      
      	* gcc.target/i386/pr85511.c: New test.
      
      From-SVN: r259609
      e8ac3359
    • H.J. Lu's avatar
      x86/CET: Build target libraries with -mshstk · 8624f868
      H.J. Lu authored
      With revision 259522:
      
      commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0
      Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
      Date:   Fri Apr 20 13:30:13 2018 +0000
      
          Define __CET__ for -fcf-protection and remove -mibt
      
      -mcet becomes an alias for -mshstk.
      
      	PR target/85485
      	* cet.m4 (GCC_CET_FLAGS): Replace -mcet with -mshstk.
      
      From-SVN: r259608
      8624f868
    • Jakub Jelinek's avatar
      re PR target/85503 (ICE in replace_swapped_load_constant, at... · c61199f2
      Jakub Jelinek authored
      re PR target/85503 (ICE in replace_swapped_load_constant, at config/rs6000/rs6000-p8swap.c:1853 on powerpc64le-linux-gnu)
      
      	PR target/85503
      	* config/rs6000/rs6000-p8swap.c (const_load_sequence_p): Punt if
      	const_vector is not CONST_VECTOR or SYMBOL_REF for a constant pool
      	containing a CONST_VECTOR.
      
      	* g++.dg/ext/pr85503.C: New test.
      
      From-SVN: r259607
      c61199f2
    • Jason Merrill's avatar
      Testsuite fixes for C++11 alignof change. · 7f3c03bf
      Jason Merrill authored
      gcc/testsuite:
      	* c-c++-common/attr-aligned-1.c: Use __alignof__ in C++11.
      	* g++.dg/cpp0x/alignas4.C: Expect 4-byte alignment on x86.
      
      From-SVN: r259606
      7f3c03bf
    • Cesar Philippidis's avatar
      [nvptx] Update newlib dependency. · 8ff02f96
      Cesar Philippidis authored
      	gcc/
      	* doc/install.texi: Update newlib dependency for nvptx.
      
      From-SVN: r259596
      8ff02f96
    • Jakub Jelinek's avatar
      re PR target/85508 (runtime error in config/i386/i386.c) · 1704194a
      Jakub Jelinek authored
      	PR target/85508
      	* config/i386/i386.c (ix86_expand_vector_init_one_var): Use UINTVAL
      	instead of INTVAL when shifting x left.
      
      	* gcc.target/i386/pr85508.c: New test.
      
      From-SVN: r259594
      1704194a
    • Andreas Krebbel's avatar
      re PR tree-optimization/85478 (ICE with single element vector) · 062c0a7b
      Andreas Krebbel authored
      Fix PR85478
      
      gcc/ChangeLog:
      
      2018-04-24  Andreas Krebbel  <krebbel@linux.ibm.com>
      
      	PR tree-optimization/85478
      	* tree-vect-loop.c (vect_analyze_loop_2): Do not call
      	vect_grouped_store_supported for single element vectors.
      
      gcc/testsuite/ChangeLog:
      
      2018-04-24  Andreas Krebbel  <krebbel@linux.ibm.com>
      
      	PR tree-optimization/85478
      	* g++.dg/pr85478.C: New test.
      
      From-SVN: r259593
      062c0a7b
    • Richard Biener's avatar
      re PR target/85491 (nbench LU Decomposition test 15% slower than GCC 7, 30% slower than peak) · 4149dd37
      Richard Biener authored
      2018-04-24  Richard Biener  <rguenther@suse.de>
      
      	PR target/85491
      	* config/i386/i386.c (ix86_add_stmt_cost): Restrict strided
      	load cost increase to the case of non-constant step.
      
      From-SVN: r259592
      4149dd37
    • Jakub Jelinek's avatar
      re PR target/84828 (ICE in verify_flow_info at gcc/cfghooks.c:265) · b72139ea
      Jakub Jelinek authored
      	PR target/84828
      	* reg-stack.c (move_for_stack_reg): Don't fail assertion about dead
      	destination if any_malformed_asm.
      
      From-SVN: r259591
      b72139ea
    • GCC Administrator's avatar
      Daily bump. · 950ec7e9
      GCC Administrator authored
      From-SVN: r259589
      950ec7e9
  3. Apr 23, 2018
  4. Apr 22, 2018
Loading