public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame
@ 2014-02-14  9:29 ebotcazou at gcc dot gnu.org
  2014-02-14  9:39 ` [Bug target/60193] " ktietz at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2014-02-14  9:29 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

            Bug ID: 60193
           Summary: [4.7.4/4.8/4.9 regression] ICE on big nested frame
           Product: gcc
           Version: 4.7.4
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ebotcazou at gcc dot gnu.org
                CC: ktietz at gcc dot gnu.org
        Depends on: 56807
            Target: x86_64-*-mingw

The fix for PR target/56807 has introduced ICEs on big nested frames:

eric@polaris:~/gnat/bugs/N213-061> cat t.c
void foo (int i)
{
  void nested (void)
  {
    char arr[1U << 31];
    arr[i] = 0;
  }

  nested ();
}
eric@polaris:~/gnat/bugs/N213-061> ~/gnat/gnat7_47/x86_64-pc-mingw32/gcc/cc1
-quiet t.c
t.c: In function 'nested':
t.c:7:3: internal compiler error: in change_address_1, at emit-rtl.c:2001
Please submit a full bug report,
with preprocessed source if appropriate.
Contact <http://gcc.gnu.org/bugs.html> for instructions.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
  2014-02-14  9:39 ` [Bug target/60193] " ktietz at gcc dot gnu.org
@ 2014-02-14  9:39 ` rguenth at gcc dot gnu.org
  2014-02-14  9:51 ` ktietz at gcc dot gnu.org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-02-14  9:39 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.7.4


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
@ 2014-02-14  9:39 ` ktietz at gcc dot gnu.org
  2014-02-14  9:39 ` rguenth at gcc dot gnu.org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-14  9:39 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

Kai Tietz <ktietz at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2014-02-14
     Ever confirmed|0                           |1

--- Comment #1 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Hmm, I can't reproduce this with recent 4.9 gcc.  There is no ICE.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
  2014-02-14  9:39 ` [Bug target/60193] " ktietz at gcc dot gnu.org
  2014-02-14  9:39 ` rguenth at gcc dot gnu.org
@ 2014-02-14  9:51 ` ktietz at gcc dot gnu.org
  2014-02-14 10:00 ` ebotcazou at gcc dot gnu.org
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-14  9:51 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #2 from Kai Tietz <ktietz at gcc dot gnu.org> ---
I built recent 4.8 cross-compiler and tested.  Again no ICE for this testcase


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2014-02-14  9:51 ` ktietz at gcc dot gnu.org
@ 2014-02-14 10:00 ` ebotcazou at gcc dot gnu.org
  2014-02-14 11:03 ` ktietz at gcc dot gnu.org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2014-02-14 10:00 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #3 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
Sorry, minor pilot error, try with:

void foo (int i)
{
  void nested (void)
  {
    char arr[(1U << 31) + 4];
    arr[i] = 0;
  }

  nested ();
}


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2014-02-14 10:00 ` ebotcazou at gcc dot gnu.org
@ 2014-02-14 11:03 ` ktietz at gcc dot gnu.org
  2014-02-14 11:52 ` ktietz at gcc dot gnu.org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-14 11:03 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #5 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Ok found issue.  Problem is that x86_64 instructions have a maximum-offset of
2^31.  Legitimate instruction doesn't detect here that constant is unsigned, so
it fails.  Nevertheless issue would happen always too for (1U << 32) even for
x86_64 abi.
Solution might be here to use the eax-register for addressing instead of
constant.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2014-02-14 11:03 ` ktietz at gcc dot gnu.org
@ 2014-02-14 11:52 ` ktietz at gcc dot gnu.org
  2014-02-18 12:49 ` ktietz at gcc dot gnu.org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-14 11:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #6 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Patch posted to ML at http://gcc.gnu.org/ml/gcc-patches/2014-02/msg00900.html


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7.4/4.8/4.9 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2014-02-14 11:52 ` ktietz at gcc dot gnu.org
@ 2014-02-18 12:49 ` ktietz at gcc dot gnu.org
  2014-02-18 12:53 ` [Bug target/60193] [4.7/4.8 " jakub at gcc dot gnu.org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-18 12:49 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #7 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Author: ktietz
Date: Tue Feb 18 12:49:15 2014
New Revision: 207844

URL: http://gcc.gnu.org/viewcvs?rev=207844&root=gcc&view=rev
Log:
2014-02-18  Kai Tietz  <ktietz@redhat.com>

    PR target/60193
    * config/i386/i386.c (ix86_expand_prologue): Use
    rax register as displacement for restoring %r10, %rax.
    Additional fix wrong offset for restoring both-registers.

2014-02-18  Kai Tietz  <ktietz@redhat.com>

    PR target/60193
    * gcc.target/i386/nest-1.c: New testcase.


Added:
    trunk/gcc/testsuite/gcc.target/i386/nest-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c
    trunk/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7/4.8 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2014-02-18 12:49 ` ktietz at gcc dot gnu.org
@ 2014-02-18 12:53 ` jakub at gcc dot gnu.org
  2014-02-18 12:58 ` ktietz at gcc dot gnu.org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-18 12:53 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
            Summary|[4.7.4/4.8/4.9 regression]  |[4.7/4.8 regression] ICE on
                   |ICE on big nested frame     |big nested frame

--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed on the trunk then.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7/4.8 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2014-02-18 12:53 ` [Bug target/60193] [4.7/4.8 " jakub at gcc dot gnu.org
@ 2014-02-18 12:58 ` ktietz at gcc dot gnu.org
  2014-02-18 13:47 ` ktietz at gcc dot gnu.org
  2014-02-18 13:49 ` ktietz at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-18 12:58 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #9 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Author: ktietz
Date: Tue Feb 18 12:57:32 2014
New Revision: 207845

URL: http://gcc.gnu.org/viewcvs?rev=207845&root=gcc&view=rev
Log:
2014-02-18  Kai Tietz  <ktietz@redhat.com>

    Backport from mainline
    PR target/60193
    * config/i386/i386.c (ix86_expand_prologue): Use
    rax register as displacement for restoring %r10, %rax.
    Additional fix wrong offset for restoring both-registers.

2014-02-18  Kai Tietz  <ktietz@redhat.com>

    PR target/60193
    * gcc.target/i386/nest-1.c: New testcase.


Added:
    branches/gcc-4_8-branch/gcc/testsuite/gcc.target/i386/nest-1.c
Modified:
    branches/gcc-4_8-branch/gcc/ChangeLog
    branches/gcc-4_8-branch/gcc/config/i386/i386.c
    branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7/4.8 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2014-02-18 12:58 ` ktietz at gcc dot gnu.org
@ 2014-02-18 13:47 ` ktietz at gcc dot gnu.org
  2014-02-18 13:49 ` ktietz at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-18 13:47 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

--- Comment #10 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Author: ktietz
Date: Tue Feb 18 13:46:38 2014
New Revision: 207846

URL: http://gcc.gnu.org/viewcvs?rev=207846&root=gcc&view=rev
Log:
2014-02-18  Kai Tietz  <ktietz@redhat.com>

    Backport from mainline
    PR target/60193
    * config/i386/i386.c (ix86_expand_prologue): Use
    rax register as displacement for restoring %r10, %rax.
    Additional fix wrong offset for restoring both-registers.

2014-02-18  Kai Tietz  <ktietz@redhat.com>

    PR target/60193
    * gcc.target/i386/nest-1.c: New testcase.


Added:
    branches/gcc-4_7-branch/gcc/testsuite/gcc.target/i386/nest-1.c
Modified:
    branches/gcc-4_7-branch/gcc/ChangeLog
    branches/gcc-4_7-branch/gcc/config/i386/i386.c
    branches/gcc-4_7-branch/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/60193] [4.7/4.8 regression] ICE on big nested frame
  2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2014-02-18 13:47 ` ktietz at gcc dot gnu.org
@ 2014-02-18 13:49 ` ktietz at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: ktietz at gcc dot gnu.org @ 2014-02-18 13:49 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60193

Kai Tietz <ktietz at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #11 from Kai Tietz <ktietz at gcc dot gnu.org> ---
Fixed on all open branches.  Close bug


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-02-18 13:49 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-14  9:29 [Bug target/60193] New: [4.7.4/4.8/4.9 regression] ICE on big nested frame ebotcazou at gcc dot gnu.org
2014-02-14  9:39 ` [Bug target/60193] " ktietz at gcc dot gnu.org
2014-02-14  9:39 ` rguenth at gcc dot gnu.org
2014-02-14  9:51 ` ktietz at gcc dot gnu.org
2014-02-14 10:00 ` ebotcazou at gcc dot gnu.org
2014-02-14 11:03 ` ktietz at gcc dot gnu.org
2014-02-14 11:52 ` ktietz at gcc dot gnu.org
2014-02-18 12:49 ` ktietz at gcc dot gnu.org
2014-02-18 12:53 ` [Bug target/60193] [4.7/4.8 " jakub at gcc dot gnu.org
2014-02-18 12:58 ` ktietz at gcc dot gnu.org
2014-02-18 13:47 ` ktietz at gcc dot gnu.org
2014-02-18 13:49 ` ktietz at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).