public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug debug/24908]  New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
@ 2005-11-16 22:08 janis at gcc dot gnu dot org
  2005-11-16 22:09 ` [Bug debug/24908] " janis at gcc dot gnu dot org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: janis at gcc dot gnu dot org @ 2005-11-16 22:08 UTC (permalink / raw)
  To: gcc-bugs

Eight SPEC CPU2000 tests fail with an ICE in dwarf2out_frame_debug_expr,
at dwarf2out.c:1554, on powerpc-linux with the options "-g -fpic -O2
-funroll-loops -fno-tree-copyrename".  The minimized testcase also fails
with GCC 4.0.0 with those options plus "-fweb -frename-registers" which
are now turned on with -funroll-loops.  Some of the those CPU2000 tests
pass with those options with GCC 4.0.0, but the bug is likely latent in
those cases.

I built SPEC CPU2000 with several sets of options generated by the tool
allpairs, which takes sets of choices and combines them to have each
pair of possibilities included in at least one set.  It's likely that no
sane user would come up with the set of options that cause this failure.


-- 
           Summary: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-
                    tree-copyrename
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: debug
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: janis at gcc dot gnu dot org
GCC target triplet: powerpc-linux


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


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

* [Bug debug/24908] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
@ 2005-11-16 22:09 ` janis at gcc dot gnu dot org
  2005-11-16 23:04 ` amodra at bigpond dot net dot au
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janis at gcc dot gnu dot org @ 2005-11-16 22:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from janis at gcc dot gnu dot org  2005-11-16 22:09 -------
Created an attachment (id=10261)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10261&action=view)
minimized testcase


-- 


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


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

* [Bug debug/24908] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
  2005-11-16 22:09 ` [Bug debug/24908] " janis at gcc dot gnu dot org
@ 2005-11-16 23:04 ` amodra at bigpond dot net dot au
  2005-11-16 23:10 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at bigpond dot net dot au @ 2005-11-16 23:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from amodra at bigpond dot net dot au  2005-11-16 23:04 -------
.ce3

(insn/f 81 80 82 0 /src/tmp/24908.c:11 (set (reg:SI 12 12)
        (reg:SI 65 lr)) -1 (nil)
    (expr_list:REG_DEAD (reg:SI 65 lr)
        (expr_list:REG_MAYBE_DEAD (const_int 0 [0x0])
            (nil))))

(insn 82 81 83 0 /src/tmp/24908.c:11 (set (reg:SI 65 lr)
        (unspec:SI [
                (const_int 0 [0x0])
            ] 7)) -1 (nil)
    (expr_list:REG_MAYBE_DEAD (const_int 0 [0x0])
        (nil)))
======

.rnreg

(insn/f 81 80 82 0 /src/tmp/24908.c:11 (set (reg:SI 26 26)
        (reg:SI 65 lr)) 282 {*movsi_internal1} (nil)
    (expr_list:REG_DEAD (reg:SI 65 lr)
        (expr_list:REG_MAYBE_DEAD (const_int 0 [0x0])
            (nil))))

(insn 82 81 83 0 /src/tmp/24908.c:11 (set (reg:SI 65 lr)
        (unspec:SI [
                (const_int 0 [0x0])
            ] 7)) 372 {load_toc_v4_pic_si} (nil)
    (expr_list:REG_MAYBE_DEAD (const_int 0 [0x0])
        (nil)))

I think the assert in dwarf2out.c is wrong, that's all.  rnreg is doing
something perfectly ok, even if possibly unnecessary, and dwarf2out gets its
knickers in a knot.


-- 

amodra at bigpond dot net dot au changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-11-16 23:04:00
               date|                            |


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


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

* [Bug debug/24908] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
  2005-11-16 22:09 ` [Bug debug/24908] " janis at gcc dot gnu dot org
  2005-11-16 23:04 ` amodra at bigpond dot net dot au
@ 2005-11-16 23:10 ` pinskia at gcc dot gnu dot org
  2005-11-16 23:18 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 23:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2005-11-16 23:10 -------
This is the assert by the way:
              /* Saving a register in a register.  */
              gcc_assert (call_used_regs [REGNO (dest)]
                          && (!fixed_regs [REGNO (dest)]
                              /* For the SPARC and its register window.  */
                              || DWARF_FRAME_REGNUM (REGNO (src))
                                   == DWARF_FRAME_RETURN_COLUMN));


saving the register in r26 is valid as there are no calls in this function at
all.


-- 


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


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

* [Bug debug/24908] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2005-11-16 23:10 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 23:18 ` pinskia at gcc dot gnu dot org
  2005-11-16 23:22 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 23:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2005-11-16 23:18 -------
The current code for the ICE came in with PR 15813 but it seems like it should
have ICE before that.


-- 


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


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

* [Bug debug/24908] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2005-11-16 23:18 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 23:22 ` pinskia at gcc dot gnu dot org
  2005-11-16 23:25 ` [Bug debug/24908] [4.0/4.1 Regression] " pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 23:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2005-11-16 23:22 -------
(In reply to comment #4)
> The current code for the ICE came in with PR 15813 but it seems like it should have ICE before that.

Or provided the wrong undwind info really.


-- 


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


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

* [Bug debug/24908] [4.0/4.1 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2005-11-16 23:22 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 23:25 ` pinskia at gcc dot gnu dot org
  2005-11-18 13:20 ` amodra at bigpond dot net dot au
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 23:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2005-11-16 23:25 -------
This is a regression from 3.4.0 which would not ICE on this at all, though
would provide wrong-debug/wrong undwind info.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|ICE in dwarf2out for cpu2000|[4.0/4.1 Regression] ICE in
                   |with -funroll-loops -fno-   |dwarf2out for cpu2000 with -
                   |tree-copyrename             |funroll-loops -fno-tree-
                   |                            |copyrename
   Target Milestone|---                         |4.0.3


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


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

* [Bug debug/24908] [4.0/4.1 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2005-11-16 23:25 ` [Bug debug/24908] [4.0/4.1 Regression] " pinskia at gcc dot gnu dot org
@ 2005-11-18 13:20 ` amodra at bigpond dot net dot au
  2005-11-19  2:19 ` mmitchel at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at bigpond dot net dot au @ 2005-11-18 13:20 UTC (permalink / raw)
  To: gcc-bugs



-- 

amodra at bigpond dot net dot au changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |amodra at bigpond dot net
                   |dot org                     |dot au
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2005-
                   |                            |11/msg01346.html
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-11-16 23:04:00         |2005-11-18 13:20:12
               date|                            |


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


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

* [Bug debug/24908] [4.0/4.1 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2005-11-18 13:20 ` amodra at bigpond dot net dot au
@ 2005-11-19  2:19 ` mmitchel at gcc dot gnu dot org
  2005-12-08 23:43 ` [Bug debug/24908] [4.0/4.1/4.2 " amodra at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-11-19  2:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from mmitchel at gcc dot gnu dot org  2005-11-19 02:19 -------
Showstopper.


-- 

mmitchel at gcc dot gnu dot org changed:

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


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


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

* [Bug debug/24908] [4.0/4.1/4.2 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2005-11-19  2:19 ` mmitchel at gcc dot gnu dot org
@ 2005-12-08 23:43 ` amodra at gcc dot gnu dot org
  2005-12-08 23:47 ` amodra at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at gcc dot gnu dot org @ 2005-12-08 23:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from amodra at gcc dot gnu dot org  2005-12-08 23:43 -------
Subject: Bug 24908

Author: amodra
Date: Thu Dec  8 23:43:40 2005
New Revision: 108257

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108257
Log:
        PR debug/24908
        * dwarf2out.c (dwarf2out_frame_debug_expr): Don't assert that
        call_used_regs can't be used to save reg in another reg.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/dwarf2out.c


-- 


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


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

* [Bug debug/24908] [4.0/4.1/4.2 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2005-12-08 23:43 ` [Bug debug/24908] [4.0/4.1/4.2 " amodra at gcc dot gnu dot org
@ 2005-12-08 23:47 ` amodra at gcc dot gnu dot org
  2005-12-08 23:50 ` amodra at gcc dot gnu dot org
  2005-12-08 23:51 ` amodra at bigpond dot net dot au
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at gcc dot gnu dot org @ 2005-12-08 23:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from amodra at gcc dot gnu dot org  2005-12-08 23:47 -------
Subject: Bug 24908

Author: amodra
Date: Thu Dec  8 23:47:48 2005
New Revision: 108258

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108258
Log:
        PR debug/24908
        * dwarf2out.c (dwarf2out_frame_debug_expr): Don't assert that
        call_used_regs can't be used to save reg in another reg.


Modified:
    branches/gcc-4_1-branch/gcc/ChangeLog
    branches/gcc-4_1-branch/gcc/dwarf2out.c


-- 


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


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

* [Bug debug/24908] [4.0/4.1/4.2 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2005-12-08 23:47 ` amodra at gcc dot gnu dot org
@ 2005-12-08 23:50 ` amodra at gcc dot gnu dot org
  2005-12-08 23:51 ` amodra at bigpond dot net dot au
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at gcc dot gnu dot org @ 2005-12-08 23:50 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from amodra at gcc dot gnu dot org  2005-12-08 23:50 -------
Subject: Bug 24908

Author: amodra
Date: Thu Dec  8 23:50:40 2005
New Revision: 108259

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108259
Log:
        PR debug/24908
        * dwarf2out.c (dwarf2out_frame_debug_expr): Don't assert that
        call_used_regs can't be used to save reg in another reg.


Modified:
    branches/gcc-4_0-branch/gcc/ChangeLog
    branches/gcc-4_0-branch/gcc/dwarf2out.c


-- 


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


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

* [Bug debug/24908] [4.0/4.1/4.2 Regression] ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename
  2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2005-12-08 23:50 ` amodra at gcc dot gnu dot org
@ 2005-12-08 23:51 ` amodra at bigpond dot net dot au
  11 siblings, 0 replies; 13+ messages in thread
From: amodra at bigpond dot net dot au @ 2005-12-08 23:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from amodra at bigpond dot net dot au  2005-12-08 23:51 -------
Fixed.


-- 

amodra at bigpond dot net dot au changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
           Priority|P1                          |P3
         Resolution|                            |FIXED


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


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

end of thread, other threads:[~2005-12-08 23:51 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-16 22:08 [Bug debug/24908] New: ICE in dwarf2out for cpu2000 with -funroll-loops -fno-tree-copyrename janis at gcc dot gnu dot org
2005-11-16 22:09 ` [Bug debug/24908] " janis at gcc dot gnu dot org
2005-11-16 23:04 ` amodra at bigpond dot net dot au
2005-11-16 23:10 ` pinskia at gcc dot gnu dot org
2005-11-16 23:18 ` pinskia at gcc dot gnu dot org
2005-11-16 23:22 ` pinskia at gcc dot gnu dot org
2005-11-16 23:25 ` [Bug debug/24908] [4.0/4.1 Regression] " pinskia at gcc dot gnu dot org
2005-11-18 13:20 ` amodra at bigpond dot net dot au
2005-11-19  2:19 ` mmitchel at gcc dot gnu dot org
2005-12-08 23:43 ` [Bug debug/24908] [4.0/4.1/4.2 " amodra at gcc dot gnu dot org
2005-12-08 23:47 ` amodra at gcc dot gnu dot org
2005-12-08 23:50 ` amodra at gcc dot gnu dot org
2005-12-08 23:51 ` amodra at bigpond dot net dot au

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).