public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/24899]  New: [4.1 Regression] Miscompiles libgnomecanvas
@ 2005-11-16 17:46 rguenth at gcc dot gnu dot org
  2005-11-16 17:46 ` [Bug tree-optimization/24899] " rguenth at gcc dot gnu dot org
                   ` (28 more replies)
  0 siblings, 29 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-16 17:46 UTC (permalink / raw)
  To: gcc-bugs

With the attached testcase, we get a SIGSEGV compiling with -O2 -fno-inline,
with -O1 -fno-inline it's fine.


-- 
           Summary: [4.1 Regression] Miscompiles libgnomecanvas
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org
GCC target triplet: i686-pc-linux-gnu


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


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

* [Bug tree-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
@ 2005-11-16 17:46 ` rguenth at gcc dot gnu dot org
  2005-11-16 17:47 ` pinskia at gcc dot gnu dot org
                   ` (27 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-16 17:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2005-11-16 17:46 -------
Created an attachment (id=10256)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10256&action=view)
testcase

Testcase.  I'll investigate later.


-- 


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


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

* [Bug tree-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
  2005-11-16 17:46 ` [Bug tree-optimization/24899] " rguenth at gcc dot gnu dot org
@ 2005-11-16 17:47 ` pinskia at gcc dot gnu dot org
  2005-11-16 17:55 ` [Bug rtl-optimization/24899] " pinskia at gcc dot gnu dot org
                   ` (26 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 17:47 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
           Severity|normal                      |critical
   Target Milestone|---                         |4.1.0


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
  2005-11-16 17:46 ` [Bug tree-optimization/24899] " rguenth at gcc dot gnu dot org
  2005-11-16 17:47 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 17:55 ` pinskia at gcc dot gnu dot org
  2005-11-16 17:55 ` pinskia at gcc dot gnu dot org
                   ` (25 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 17:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2005-11-16 17:55 -------
The only difference at the tree level is:
-  uta = art_uta_new (clip_x1, clip_y1, clip_x1 + 1, clip_y1 + 1);
+  uta = art_uta_new (clip_x1, clip_y1, clip_x1 + 1, clip_y1 + 1) [tail call];

-  uta = art_uta_new (clip_x1, clip_y1, clip_x1 + 1, clip_y1 + 1);
+  uta = art_uta_new (clip_x1, clip_y1, clip_x1 + 1, clip_y1 + 1) [tail call];


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|tree-optimization           |rtl-optimization


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2005-11-16 17:55 ` [Bug rtl-optimization/24899] " pinskia at gcc dot gnu dot org
@ 2005-11-16 17:55 ` pinskia at gcc dot gnu dot org
  2005-11-16 17:56 ` pinskia at gcc dot gnu dot org
                   ` (24 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 17:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2005-11-16 17:55 -------
(In reply to comment #2)
> The only difference at the tree level is:
That is -O1 vs -O2


-- 


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2005-11-16 17:55 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 17:56 ` pinskia at gcc dot gnu dot org
  2005-11-16 18:05 ` rguenth at gcc dot gnu dot org
                   ` (23 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 17:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2005-11-16 17:56 -------
(In reply to comment #3)
> (In reply to comment #2)
> > The only difference at the tree level is:
> That is -O1 vs -O2

And -fno-optimize-sibling-calls makes no difference.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2005-11-16 17:56 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 18:05 ` rguenth at gcc dot gnu dot org
  2005-11-16 18:07 ` pinskia at gcc dot gnu dot org
                   ` (22 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-16 18:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rguenth at gcc dot gnu dot org  2005-11-16 18:05 -------
-floop-optimize2 fixes it.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2005-11-16 18:05 ` rguenth at gcc dot gnu dot org
@ 2005-11-16 18:07 ` pinskia at gcc dot gnu dot org
  2005-11-16 18:45 ` federico at novell dot com
                   ` (21 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-16 18:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2005-11-16 18:07 -------
>From looking at the RTL dumps, old-loop is where the difference is introduced
so blocking the meta-bug for loop.c issues (this goes under section a of that
meta bug).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
OtherBugsDependingO|                            |22366
              nThis|                            |


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2005-11-16 18:07 ` pinskia at gcc dot gnu dot org
@ 2005-11-16 18:45 ` federico at novell dot com
  2005-11-18 18:01 ` steven at gcc dot gnu dot org
                   ` (20 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: federico at novell dot com @ 2005-11-16 18:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from federico at novell dot com  2005-11-16 18:44 -------
In the original code, art_uta_new() is in a separate module (a whole different
library, actually).  I don't know if this will affect inlining in this example.


-- 

federico at novell dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |federico at novell dot com


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2005-11-16 18:45 ` federico at novell dot com
@ 2005-11-18 18:01 ` steven at gcc dot gnu dot org
  2005-11-18 23:35 ` steven at gcc dot gnu dot org
                   ` (19 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-11-18 18:01 UTC (permalink / raw)
  To: gcc-bugs



-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-11-18 18:01:19
               date|                            |


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2005-11-18 18:01 ` steven at gcc dot gnu dot org
@ 2005-11-18 23:35 ` steven at gcc dot gnu dot org
  2005-11-18 23:37 ` steven at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-11-18 23:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from steven at gcc dot gnu dot org  2005-11-18 23:35 -------
I can't reproduce this with r107187.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2005-11-18 23:35 ` steven at gcc dot gnu dot org
@ 2005-11-18 23:37 ` steven at gcc dot gnu dot org
  2005-11-19  0:32 ` pinskia at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-11-18 23:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from steven at gcc dot gnu dot org  2005-11-18 23:37 -------
This does in no way block the removal of loop.c.  Rather, the (now latent
again) bug would disappear with loop.c if/when we nuke it.


-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |22366
OtherBugsDependingO|22366                       |
              nThis|                            |


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2005-11-18 23:37 ` steven at gcc dot gnu dot org
@ 2005-11-19  0:32 ` pinskia at gcc dot gnu dot org
  2005-11-19  2:18 ` mmitchel at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-19  0:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from pinskia at gcc dot gnu dot org  2005-11-19 00:32 -------
(In reply to comment #8)
> I can't reproduce this with r107187.

I cannot reproduce it either with 107184 either.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] Miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2005-11-19  0:32 ` pinskia at gcc dot gnu dot org
@ 2005-11-19  2:18 ` mmitchel at gcc dot gnu dot org
  2005-11-19 10:23 ` [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-11-19  2:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from mmitchel at gcc dot gnu dot org  2005-11-19 02:18 -------
Should this bug go into WORKSFORME state?


-- 


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


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

* [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2005-11-19  2:18 ` mmitchel at gcc dot gnu dot org
@ 2005-11-19 10:23 ` rguenth at gcc dot gnu dot org
  2005-11-19 10:36 ` rguenth at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-19 10:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from rguenth at gcc dot gnu dot org  2005-11-19 10:22 -------
I don't know.  There seems to be a latent problem in loop.c (no wonders).  We
are currently trying to get rid of loop.c for 4.1 (by effectively disabling
it), so we may not care if this is not fixed.  For 4.2 we will get rid of
loop.c completely.

So, SUSPENDED seems appropriate (unless someone wants to work on it).  I also
remove the regression marker and note it as a loop.c bug in the summary.

May I create a testcase and apply that to the branch(es), so we notice
re-surfacing of the problem?


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |SUSPENDED
            Summary|[4.1 Regression] Miscompiles|loop.c miscompiles
                   |libgnomecanvas              |libgnomecanvas


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


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

* [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2005-11-19 10:23 ` [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
@ 2005-11-19 10:36 ` rguenth at gcc dot gnu dot org
  2005-11-19 10:37 ` rguenth at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-19 10:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from rguenth at gcc dot gnu dot org  2005-11-19 10:36 -------
Created an attachment (id=10292)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10292&action=view)
proposed testsuite entry

Btw, did you remember to use -fno-inline?  I still seem to be able to reproduce
it.  Testcase which doesn't require that and any includes attached.


-- 


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


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

* [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2005-11-19 10:36 ` rguenth at gcc dot gnu dot org
@ 2005-11-19 10:37 ` rguenth at gcc dot gnu dot org
  2005-11-19 18:42 ` [Bug rtl-optimization/24899] [4.1 Regression] " pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-19 10:37 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|SUSPENDED                   |NEW
   Last reconfirmed|2005-11-18 18:01:19         |2005-11-19 10:37:01
               date|                            |


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


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

* [Bug rtl-optimization/24899] [4.1 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (15 preceding siblings ...)
  2005-11-19 10:37 ` rguenth at gcc dot gnu dot org
@ 2005-11-19 18:42 ` pinskia at gcc dot gnu dot org
  2005-11-22  7:33 ` [Bug rtl-optimization/24899] [4.1/4.2 " steven at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-19 18:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from pinskia at gcc dot gnu dot org  2005-11-19 18:42 -------
I must had missed -fno-inline.  This is still reproducable for me on the
mainline and the 4.1 branch.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.1.0
      Known to work|                            |4.0.3
            Summary|loop.c miscompiles          |[4.1 Regression] loop.c
                   |libgnomecanvas              |miscompiles libgnomecanvas


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (16 preceding siblings ...)
  2005-11-19 18:42 ` [Bug rtl-optimization/24899] [4.1 Regression] " pinskia at gcc dot gnu dot org
@ 2005-11-22  7:33 ` steven at gcc dot gnu dot org
  2005-12-09 10:10 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-11-22  7:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from steven at gcc dot gnu dot org  2005-11-22 07:33 -------
Well then.......
Mine.


-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-11-19 10:37:01         |2005-11-22 07:33:13
               date|                            |


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (17 preceding siblings ...)
  2005-11-22  7:33 ` [Bug rtl-optimization/24899] [4.1/4.2 " steven at gcc dot gnu dot org
@ 2005-12-09 10:10 ` rguenth at gcc dot gnu dot org
  2005-12-09 14:26 ` steven at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-12-09 10:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from rguenth at gcc dot gnu dot org  2005-12-09 10:10 -------
Steven, any updates on this?


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (18 preceding siblings ...)
  2005-12-09 10:10 ` rguenth at gcc dot gnu dot org
@ 2005-12-09 14:26 ` steven at gcc dot gnu dot org
  2005-12-09 15:37 ` steven at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-12-09 14:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from steven at gcc dot gnu dot org  2005-12-09 14:26 -------
Created an attachment (id=10445)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10445&action=view)
Smaller test case


-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #10256|0                           |1
        is obsolete|                            |


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (19 preceding siblings ...)
  2005-12-09 14:26 ` steven at gcc dot gnu dot org
@ 2005-12-09 15:37 ` steven at gcc dot gnu dot org
  2005-12-10  0:31 ` steven at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-12-09 15:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from steven at gcc dot gnu dot org  2005-12-09 15:37 -------
>From the diff between the old-loop and gcse1 dumps, this looks like a loop.c
strength reduction bug.  Indeed, -fno-strength-reduce makes the miscompilation
go away for me.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (20 preceding siblings ...)
  2005-12-09 15:37 ` steven at gcc dot gnu dot org
@ 2005-12-10  0:31 ` steven at gcc dot gnu dot org
  2005-12-12 14:12 ` rguenth at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-12-10  0:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from steven at gcc dot gnu dot org  2005-12-10 00:31 -------
This is beyond my RTL fu.


-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|steven at gcc dot gnu dot   |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (21 preceding siblings ...)
  2005-12-10  0:31 ` steven at gcc dot gnu dot org
@ 2005-12-12 14:12 ` rguenth at gcc dot gnu dot org
  2005-12-14 17:06 ` jakub at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-12-12 14:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from rguenth at gcc dot gnu dot org  2005-12-12 14:12 -------
Zdenek, any chance you can have a look at this?


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (22 preceding siblings ...)
  2005-12-12 14:12 ` rguenth at gcc dot gnu dot org
@ 2005-12-14 17:06 ` jakub at gcc dot gnu dot org
  2005-12-14 18:12 ` jakub at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-12-14 17:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from jakub at gcc dot gnu dot org  2005-12-14 17:06 -------
Created an attachment (id=10488)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10488&action=view)
pr24899.c

Even shorter testcase.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (23 preceding siblings ...)
  2005-12-14 17:06 ` jakub at gcc dot gnu dot org
@ 2005-12-14 18:12 ` jakub at gcc dot gnu dot org
  2005-12-15 10:48 ` jakub at redhat dot com
                   ` (3 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-12-14 18:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from jakub at gcc dot gnu dot org  2005-12-14 18:12 -------
Created an attachment (id=10489)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10489&action=view)
pr24899.c

Even shorter one.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (24 preceding siblings ...)
  2005-12-14 18:12 ` jakub at gcc dot gnu dot org
@ 2005-12-15 10:48 ` jakub at redhat dot com
  2005-12-16 12:12 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at redhat dot com @ 2005-12-15 10:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #23 from jakub at redhat dot com  2005-12-15 10:48 -------
The problem seems to be that strength_reduce -> loop_givs_reduce reduces a giv
that is not always_computable (and as shown on the segfault, it really can't be
computed unconditionally).
p *bl->giv
$16 = {insn = 0x2aaaadc389b0, new_reg = 0x2aaaadc3d3e0, src_reg =
0x2aaaadc30d60, giv_type = DEST_REG,
  dest_reg = 0x2aaaadc30da0, location = 0x0, mode = SImode, mem = 0x0, mult_val
= 0x2aaaadc3b2c0, add_val = 0x2aaaada5a400,
  benefit = 16, final_value = 0x0, combined_with = 0, replaceable = 0,
not_replaceable = 0, ignore = 0, always_computable = 0,
  always_executed = 0, maybe_multiple = 0, cant_derive = 1, maybe_dead = 0,
auto_inc_opt = 0, shared = 0, no_const_addval = 1,
  lifetime = 18, derive_adjustment = 0x0, ext_dependent = 0x0, next_iv = 0x0,
same = 0x0, same_insn = 0x0, last_use = 0x0}

p debug_rtx (bl->giv->add_val)
(const_int 0 [0x0])
p debug_rtx (bl->giv->mult_val)
(mem:SI (reg/v/f:DI 67 [ z ]) [2 S4 A32])

I'm not sure though if just adding
if (!v->always_computable)
  {
    if (loop_dump_stream)
      fprintf (loop_dump_stream,
               "giv of insn %d: not always computable.\n",
               INSN_UID (v->insn));
    v->ignore = 1;
    bl->all_reduced = 0;
  }
to the loop in strength_reduce a few lines above loop_givs_reduce call
wouldn't be a too big hammer for this.
Alternatively check if (!v->always_computable && (may_trap_or_fault_p
(v->add_val) || (may_trap_or_fault_p (v->mult_val)).

BTW, I don't think P3 is the right priority here, IMHO P1 would be more
suitable.


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (25 preceding siblings ...)
  2005-12-15 10:48 ` jakub at redhat dot com
@ 2005-12-16 12:12 ` jakub at gcc dot gnu dot org
  2005-12-16 12:14 ` jakub at gcc dot gnu dot org
  2005-12-16 17:13 ` pinskia at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-12-16 12:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #24 from jakub at gcc dot gnu dot org  2005-12-16 12:12 -------
Subject: Bug 24899

Author: jakub
Date: Fri Dec 16 12:12:41 2005
New Revision: 108642

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108642
Log:
        PR rtl-optimization/24899
        * loop.c (strength_reduce): Don't reduce giv that is not always
        computable and where add_val or mult_val can trap.

        * gcc.c-torture/execute/20051215-1.c: New test.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/20051215-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/loop.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (26 preceding siblings ...)
  2005-12-16 12:12 ` jakub at gcc dot gnu dot org
@ 2005-12-16 12:14 ` jakub at gcc dot gnu dot org
  2005-12-16 17:13 ` pinskia at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-12-16 12:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #25 from jakub at gcc dot gnu dot org  2005-12-16 12:14 -------
Subject: Bug 24899

Author: jakub
Date: Fri Dec 16 12:14:15 2005
New Revision: 108643

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=108643
Log:
        PR rtl-optimization/24899
        * loop.c (strength_reduce): Don't reduce giv that is not always
        computable and where add_val or mult_val can trap.

        * gcc.c-torture/execute/20051215-1.c: New test.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/gcc.c-torture/execute/20051215-1.c
Modified:
    branches/gcc-4_1-branch/gcc/ChangeLog
    branches/gcc-4_1-branch/gcc/loop.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug rtl-optimization/24899] [4.1/4.2 Regression] loop.c miscompiles libgnomecanvas
  2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
                   ` (27 preceding siblings ...)
  2005-12-16 12:14 ` jakub at gcc dot gnu dot org
@ 2005-12-16 17:13 ` pinskia at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-12-16 17:13 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #26 from pinskia at gcc dot gnu dot org  2005-12-16 17:13 -------
Fixed.


-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

end of thread, other threads:[~2005-12-16 17:13 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-16 17:46 [Bug tree-optimization/24899] New: [4.1 Regression] Miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
2005-11-16 17:46 ` [Bug tree-optimization/24899] " rguenth at gcc dot gnu dot org
2005-11-16 17:47 ` pinskia at gcc dot gnu dot org
2005-11-16 17:55 ` [Bug rtl-optimization/24899] " pinskia at gcc dot gnu dot org
2005-11-16 17:55 ` pinskia at gcc dot gnu dot org
2005-11-16 17:56 ` pinskia at gcc dot gnu dot org
2005-11-16 18:05 ` rguenth at gcc dot gnu dot org
2005-11-16 18:07 ` pinskia at gcc dot gnu dot org
2005-11-16 18:45 ` federico at novell dot com
2005-11-18 18:01 ` steven at gcc dot gnu dot org
2005-11-18 23:35 ` steven at gcc dot gnu dot org
2005-11-18 23:37 ` steven at gcc dot gnu dot org
2005-11-19  0:32 ` pinskia at gcc dot gnu dot org
2005-11-19  2:18 ` mmitchel at gcc dot gnu dot org
2005-11-19 10:23 ` [Bug rtl-optimization/24899] loop.c miscompiles libgnomecanvas rguenth at gcc dot gnu dot org
2005-11-19 10:36 ` rguenth at gcc dot gnu dot org
2005-11-19 10:37 ` rguenth at gcc dot gnu dot org
2005-11-19 18:42 ` [Bug rtl-optimization/24899] [4.1 Regression] " pinskia at gcc dot gnu dot org
2005-11-22  7:33 ` [Bug rtl-optimization/24899] [4.1/4.2 " steven at gcc dot gnu dot org
2005-12-09 10:10 ` rguenth at gcc dot gnu dot org
2005-12-09 14:26 ` steven at gcc dot gnu dot org
2005-12-09 15:37 ` steven at gcc dot gnu dot org
2005-12-10  0:31 ` steven at gcc dot gnu dot org
2005-12-12 14:12 ` rguenth at gcc dot gnu dot org
2005-12-14 17:06 ` jakub at gcc dot gnu dot org
2005-12-14 18:12 ` jakub at gcc dot gnu dot org
2005-12-15 10:48 ` jakub at redhat dot com
2005-12-16 12:12 ` jakub at gcc dot gnu dot org
2005-12-16 12:14 ` jakub at gcc dot gnu dot org
2005-12-16 17:13 ` pinskia 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).