public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/25218]  New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795
@ 2005-12-02  6:35 jv244 at cam dot ac dot uk
  2005-12-02 14:03 ` [Bug target/25218] [4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2005-12-02  6:35 UTC (permalink / raw)
  To: gcc-bugs

Hi,

the following yields an ICE with 4.0.1, 4.0.2 and a recent 4.1 branch (but in a
different location) if compiled at -O3. Compiles at -O2 and at -O3 with gcc
3.3.4:

---------------------------------------
static float rgam;
extern void *jmp(void *);

void drotmg(float d1) {
void *labels[] = { &&L170, &&L180, 0 };

  for(;;) {
    goto *jmp(labels);

    if (d1 <= rgam)
      goto L170;

L170:
    if (d1 <= rgam)
      goto L170;
  }

L180:
  goto L170;
}
---------------------------------------


-- 
           Summary: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-
                    stack.c:2795
           Product: gcc
           Version: 4.0.1
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jv244 at cam dot ac dot uk
  GCC host triplet: Linux-i686


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


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

* [Bug target/25218] [4.0/4.1/4.2 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
@ 2005-12-02 14:03 ` pinskia at gcc dot gnu dot org
  2005-12-02 15:26 ` [Bug target/25218] [4.0 " pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-02 14:03 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[Regression 4.0/4.1] ICE :  |[4.0/4.1/4.2 Regression] ICE
                   |in compensate_edge, at reg- |: in compensate_edge, at
                   |stack.c:2795                |reg-stack.c:2795
   Target Milestone|---                         |4.0.3


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
  2005-12-02 14:03 ` [Bug target/25218] [4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
@ 2005-12-02 15:26 ` pinskia at gcc dot gnu dot org
  2005-12-02 15:28 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-02 15:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2005-12-02 15:26 -------
There are two different bugs here.  The first one is only a 4.0 regresssion and
that is a target bug as -O2 on 4.0.3 fails but it does not for 4.1.0.

The second one how ever is 4.1/4.2 regression and is a generic one which I
filed as PR 25224.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
           Keywords|                            |ice-on-valid-code
   Last reconfirmed|0000-00-00 00:00:00         |2005-12-02 15:26:06
               date|                            |
            Summary|[4.0/4.1/4.2 Regression] ICE|[4.0 Regression] ICE : in
                   |: in compensate_edge, at    |compensate_edge, at reg-
                   |reg-stack.c:2795            |stack.c:2795


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
  2005-12-02 14:03 ` [Bug target/25218] [4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
  2005-12-02 15:26 ` [Bug target/25218] [4.0 " pinskia at gcc dot gnu dot org
@ 2005-12-02 15:28 ` pinskia at gcc dot gnu dot org
  2006-01-03  9:42 ` jv244 at cam dot ac dot uk
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-02 15:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2005-12-02 15:28 -------
I really mean, "-O3 -m32 -fno-unswitch-loops -fno-tree-dominator-opts" fails in
4.0.3 but passes in 4.1.0 or 4.2.0.


-- 


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (2 preceding siblings ...)
  2005-12-02 15:28 ` pinskia at gcc dot gnu dot org
@ 2006-01-03  9:42 ` jv244 at cam dot ac dot uk
  2006-01-15 22:54 ` mmitchel at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2006-01-03  9:42 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 876 bytes --]



------- Comment #3 from jv244 at cam dot ac dot uk  2006-01-03 09:42 -------
(In reply to comment #2)
> I really mean, "-O3 -m32 -fno-unswitch-loops -fno-tree-dominator-opts" fails in
> 4.0.3 but passes in 4.1.0 or 4.2.0.
> 

Still getting:

/scratch/vondele/gcc_40_branch/build/bin/gcc -O3 -m32 -fno-unswitch-loops
-fno-tree-dominator-opts -c test_25218.c

test_25218.c: In function ‘drotmg’:
test_25218.c:20: internal compiler error: in compensate_edge, at
reg-stack.c:2795
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

with

gcc (GCC) 4.0.3 20060103 (prerelease)

I notice now, on an opteron, that the -m32 switch is needed to trigger the bug.
There is no crash if I use just '-O3' whereas this happened on a pentium IIRC.


-- 


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



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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (3 preceding siblings ...)
  2006-01-03  9:42 ` jv244 at cam dot ac dot uk
@ 2006-01-15 22:54 ` mmitchel at gcc dot gnu dot org
  2006-02-20  7:59 ` jv244 at cam dot ac dot uk
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-01-15 22:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from mmitchel at gcc dot gnu dot org  2006-01-15 22:54 -------
ICE on valid; P1.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (4 preceding siblings ...)
  2006-01-15 22:54 ` mmitchel at gcc dot gnu dot org
@ 2006-02-20  7:59 ` jv244 at cam dot ac dot uk
  2006-02-20 16:13 ` jv244 at cam dot ac dot uk
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2006-02-20  7:59 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2039 bytes --]



------- Comment #5 from jv244 at cam dot ac dot uk  2006-02-20 07:59 -------
(In reply to comment #4)
> ICE on valid; P1.

Still present with 'gcc version 4.0.3 20060219 (prerelease)':

gcc -c -m32 -O3 test.c
test.c: In function ‘drotmg’:
test.c:20: internal compiler error: in compensate_edge, at reg-stack.c:2795

BTW, is there any way for me to change the 'Last confirmed' field ? Since that
is the purpose of this comment. To add some more info, this is the stack trace
of cc1 that leads to the abort:

#4  0x00000000006714fb in compensate_edge (e=0x2a959776c0, file=0x0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/reg-stack.c:2795
#5  0x0000000000671bff in convert_regs_2 (file=0x0, block=0x0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/reg-stack.c:2865
#6  0x0000000000672186 in reg_to_stack (file=0x0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/reg-stack.c:3086
#7  0x00000000006c2e23 in rest_of_compilation () at
/scratch/vondele/gcc_40_branch/gcc/gcc/passes.c:391
#8  0x0000000000457465 in execute_pass_list (pass=0x9833c0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/tree-optimize.c:526
#9  0x00000000004576db in tree_rest_of_compilation (fndecl=0x2a9595eea0)
    at /scratch/vondele/gcc_40_branch/gcc/gcc/tree-optimize.c:661
#10 0x0000000000412ec8 in c_expand_body (fndecl=0x2a9595eea0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/c-decl.c:6613
#11 0x00000000006e9e38 in cgraph_expand_function (node=0x2a959689c0) at
/scratch/vondele/gcc_40_branch/gcc/gcc/cgraphunit.c:835
#12 0x00000000006eac2b in cgraph_optimize () at
/scratch/vondele/gcc_40_branch/gcc/gcc/cgraphunit.c:1708
#13 0x0000000000414ba2 in c_write_global_declarations () at
/scratch/vondele/gcc_40_branch/gcc/gcc/c-decl.c:7613
#14 0x00000000006a9806 in toplev_main (argc=Variable "argc" is not available.
) at /scratch/vondele/gcc_40_branch/gcc/gcc/toplev.c:1023
#15 0x0000002a95688e5d in __libc_start_main () from /lib64/tls/libc.so.6
#16 0x000000000040267a in _start () at ../sysdeps/x86_64/elf/start.S:96


-- 


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (5 preceding siblings ...)
  2006-02-20  7:59 ` jv244 at cam dot ac dot uk
@ 2006-02-20 16:13 ` jv244 at cam dot ac dot uk
  2006-02-20 16:24 ` nathan at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2006-02-20 16:13 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from jv244 at cam dot ac dot uk  2006-02-20 16:13 -------

> #4  0x00000000006714fb in compensate_edge (e=0x2a959776c0, file=0x0) at
> /scratch/vondele/gcc_40_branch/gcc/gcc/reg-stack.c:2795

this assert was last modified by nathan (from svn ann, revision 87244), who
seems to be associated with He-Who-Must-Not-Be-Named, so this could be
intentional. Added to the CC.


-- 

jv244 at cam dot ac dot uk changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nathan at codesourcery dot
                   |                            |com


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (6 preceding siblings ...)
  2006-02-20 16:13 ` jv244 at cam dot ac dot uk
@ 2006-02-20 16:24 ` nathan at gcc dot gnu dot org
  2006-02-20 16:32 ` jv244 at cam dot ac dot uk
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: nathan at gcc dot gnu dot org @ 2006-02-20 16:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from nathan at gcc dot gnu dot org  2006-02-20 16:24 -------
I'm guessing my change was in converting an if () abort () into gcc_assert, and
not directly to blame for whatever's happening here.


-- 


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (7 preceding siblings ...)
  2006-02-20 16:24 ` nathan at gcc dot gnu dot org
@ 2006-02-20 16:32 ` jv244 at cam dot ac dot uk
  2006-02-22 14:08 ` jv244 at cam dot ac dot uk
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2006-02-20 16:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from jv244 at cam dot ac dot uk  2006-02-20 16:32 -------
(In reply to comment #7)
> I'm guessing my change was in converting an if () abort () into gcc_assert, and
> not directly to blame for whatever's happening here.

Looks like you're right... I must have been reading too much lately.


-- 


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (8 preceding siblings ...)
  2006-02-20 16:32 ` jv244 at cam dot ac dot uk
@ 2006-02-22 14:08 ` jv244 at cam dot ac dot uk
  2006-03-11  3:16 ` mmitchel at gcc dot gnu dot org
  2007-02-03 16:06 ` gdr at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2006-02-22 14:08 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from jv244 at cam dot ac dot uk  2006-02-22 14:08 -------
Added Jan Hubicka, since he seems the original author of the code that fails
(hope I get it right this time) and might have an idea on how to fix this in
time for 4.0.3


-- 

jv244 at cam dot ac dot uk changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|nathan at codesourcery dot  |hubicka at gcc dot gnu dot
                   |com                         |org


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (9 preceding siblings ...)
  2006-02-22 14:08 ` jv244 at cam dot ac dot uk
@ 2006-03-11  3:16 ` mmitchel at gcc dot gnu dot org
  2007-02-03 16:06 ` gdr at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-03-11  3:16 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.3                       |4.0.4


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


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

* [Bug target/25218] [4.0 Regression] ICE : in compensate_edge, at reg-stack.c:2795
  2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
                   ` (10 preceding siblings ...)
  2006-03-11  3:16 ` mmitchel at gcc dot gnu dot org
@ 2007-02-03 16:06 ` gdr at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: gdr at gcc dot gnu dot org @ 2007-02-03 16:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from gdr at gcc dot gnu dot org  2007-02-03 16:06 -------
Fixed in GCC-4.1.1.


-- 

gdr at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.0.4                       |4.1.1


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


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

end of thread, other threads:[~2007-02-03 16:06 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-12-02  6:35 [Bug c/25218] New: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-stack.c:2795 jv244 at cam dot ac dot uk
2005-12-02 14:03 ` [Bug target/25218] [4.0/4.1/4.2 Regression] " pinskia at gcc dot gnu dot org
2005-12-02 15:26 ` [Bug target/25218] [4.0 " pinskia at gcc dot gnu dot org
2005-12-02 15:28 ` pinskia at gcc dot gnu dot org
2006-01-03  9:42 ` jv244 at cam dot ac dot uk
2006-01-15 22:54 ` mmitchel at gcc dot gnu dot org
2006-02-20  7:59 ` jv244 at cam dot ac dot uk
2006-02-20 16:13 ` jv244 at cam dot ac dot uk
2006-02-20 16:24 ` nathan at gcc dot gnu dot org
2006-02-20 16:32 ` jv244 at cam dot ac dot uk
2006-02-22 14:08 ` jv244 at cam dot ac dot uk
2006-03-11  3:16 ` mmitchel at gcc dot gnu dot org
2007-02-03 16:06 ` gdr at gcc dot gnu dot 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).