and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

This project is mirrored from git://gcc.gnu.org/git/gcc.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 02 May, 2018 5 commits
  2. 01 May, 2018 4 commits
  3. 30 Apr, 2018 1 commit
  4. 29 Apr, 2018 1 commit
  5. 28 Apr, 2018 1 commit
  6. 27 Apr, 2018 8 commits
  7. 26 Apr, 2018 3 commits
  8. 25 Apr, 2018 5 commits
    • H.J. Lu's avatar
      x86: Correct movdir64b builtin function · b235217d
      H.J. Lu authored
      gcc/ChangeLog:
      
      	Backport from mainline
      	2018-04-25  Sebastian Peryt  <sebastian.peryt@intel.com>
      
      	PR target/85473
      	* config/i386/i386.c (ix86_expand_builtin): Change memory
      	operand to XI, extend p0 to Pmode.
      	* config/i386/i386.md: Change unspec volatile and operand
      	1 mode to XI, change operand 0 mode to P.
      
      gcc/testsuite/ChangeLog:
      
      	Backport from mainline
      	2018-04-25  Sebastian Peryt  <sebastian.peryt@intel.com>
      
      	PR target/85473
      	* gcc.target/i386/pr85473-1.c: New test.
      	* gcc.target/i386/pr85473-2.c: New test.
      
      From-SVN: r259654
      b235217d
    • Eric Botcazou's avatar
      re PR ada/85007 (-b flag to gnatlink not recognized) · d4e26182
      Eric Botcazou authored
      	PR ada/85007
      	* gnat_ugn.texi: Regenerate.
      
      From-SVN: r259640
      d4e26182
    • Jakub Jelinek's avatar
      * DEV-PHASE: Set to prerelease. · dc5c5ba5
      Jakub Jelinek authored
      From-SVN: r259636
      dc5c5ba5
    • Jakub Jelinek's avatar
      re PR c++/85437 (member pointer static upcast rejected in a constexpr context) · 7d75ea04
      Jakub Jelinek authored
      	PR c++/85437
      	PR c++/49171
      	* cp-tree.h (REINTERPRET_CAST_P): New.
      	* constexpr.c (cxx_eval_constant_expression) <case NOP_EXPR>:
      	Reject REINTERPET_CAST_P conversions.  Use cplus_expand_constant
      	for non-trivial PTRMEM_CST cases.
      	* typeck.c (build_nop_reinterpret): New.
      	(build_reinterpret_cast_1): Use it.  Set REINTERPRET_CAST_P on
      	NOP_EXPRs returned by cp_convert.
      
      	* g++.dg/cpp0x/addressof1.C: Make reinterpret cases runtime checks.
      	* g++.dg/cpp0x/constexpr-cast.C: Remove xfails
      	* g++.dg/cpp0x/constexpr-nullptr-2.C: Likewise.
      	* g++.dg/cpp0x/constexpr-pmf1.C: Check when optimized.
      	* g++.dg/cpp0x/pr85437-1.C: New.
      	* g++.dg/cpp0x/pr85437-2.C: New.
      	* g++.dg/cpp0x/pr85437-3.C: New.
      	* g++.dg/cpp0x/pr85437-4.C: New.
      
      From-SVN: r259629
      7d75ea04
    • GCC Administrator's avatar
      Daily bump. · 90855339
      GCC Administrator authored
      From-SVN: r259628
      90855339
  9. 24 Apr, 2018 12 commits
    • 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