public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/32328]  New: 4.2.0: -O2 causes skipped code
@ 2007-06-13 21:18 tdragon at tdragon dot net
  2007-06-13 21:20 ` [Bug c/32328] " tdragon at tdragon dot net
                   ` (33 more replies)
  0 siblings, 34 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-13 21:18 UTC (permalink / raw)
  To: gcc-bugs

When the attached file is compiled with a mingw32 build of GCC 4.2.0 using the
-O2 option (gcc -O2 -c timestamp2.i), lines 159 and 160 are never executed when
running the program that uses this file. Since the hashitem function modifies
the variable b which is passed to it by-address, leaving those statements out
is definitely not a valid optimization. Compiling without -O2 (gcc -c
timestamp2.i) gives the correct result. Sorry I can't read assembler, or I'd
try to narrow things down more.

This is a regression from 4.1.2, which works correctly with or without -O2. If
it helps, the GCC binaries I use (and sources) can be downloaded at
http://hosted.filefront.com/tldragon7.


-- 
           Summary: 4.2.0: -O2 causes skipped code
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tdragon at tdragon dot net
 GCC build triplet: i386-pc-mingw32
  GCC host triplet: i386-pc-mingw32
GCC target triplet: i386-pc-mingw32


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


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

* [Bug c/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
@ 2007-06-13 21:20 ` tdragon at tdragon dot net
  2007-06-13 22:21 ` [Bug rtl-optimization/32328] " pinskia at gcc dot gnu dot org
                   ` (32 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-13 21:20 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from tdragon at tdragon dot net  2007-06-13 21:19 -------
Created an attachment (id=13701)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13701&action=view)
Preprocessed example source


-- 


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


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

* [Bug rtl-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
  2007-06-13 21:20 ` [Bug c/32328] " tdragon at tdragon dot net
@ 2007-06-13 22:21 ` pinskia at gcc dot gnu dot org
  2007-06-13 22:27 ` [Bug tree-optimization/32328] " tdragon at tdragon dot net
                   ` (31 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-06-13 22:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2007-06-13 22:21 -------
Do you mean the last two stores to b:
 b->time = time;
 b->progress = found ? 4 : 2;

Though we could have an alias violation if you don't cast back in hashitem to
the correct type of the argument.  This is still a bug.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|c                           |rtl-optimization
           Keywords|                            |alias, wrong-code
      Known to fail|                            |4.2.0 4.3.0
   Target Milestone|---                         |4.2.1


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
  2007-06-13 21:20 ` [Bug c/32328] " tdragon at tdragon dot net
  2007-06-13 22:21 ` [Bug rtl-optimization/32328] " pinskia at gcc dot gnu dot org
@ 2007-06-13 22:27 ` tdragon at tdragon dot net
  2007-06-13 22:36 ` tdragon at tdragon dot net
                   ` (30 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-13 22:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from tdragon at tdragon dot net  2007-06-13 22:27 -------
(In reply to comment #2)
> Do you mean the last two stores to b:
>  b->time = time;
>  b->progress = found ? 4 : 2;
Yes, those two lines are the ones that are wrongly skipped.


-- 


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (2 preceding siblings ...)
  2007-06-13 22:27 ` [Bug tree-optimization/32328] " tdragon at tdragon dot net
@ 2007-06-13 22:36 ` tdragon at tdragon dot net
  2007-06-13 22:47 ` tdragon at tdragon dot net
                   ` (29 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-13 22:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from tdragon at tdragon dot net  2007-06-13 22:36 -------
(In reply to comment #2)
> Though we could have an alias violation if you don't cast back in hashitem to
> the correct type of the argument.
hashitem() uses the type as punned to HASHDATA* (where HASHDATA is a struct
with a single member of type char*). However, by implementation hashitem() will
never assign a new address that doesn't point to the same type as what was
passed -- in this case, it will only ever assign another BINDING*.


-- 


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (3 preceding siblings ...)
  2007-06-13 22:36 ` tdragon at tdragon dot net
@ 2007-06-13 22:47 ` tdragon at tdragon dot net
  2007-06-20 14:45 ` tdragon at tdragon dot net
                   ` (28 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-13 22:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from tdragon at tdragon dot net  2007-06-13 22:47 -------
Is it possible that an optimization enabled by -O2 *assumes* that hashitem()
will conform with strict aliasing by not dereferencing that argument, and thus
optimizes those lines away? (Not the case.) If this is what is happening and is
the correct behavior, then this is in fact user error and I'm sorry to have
wasted your time.


-- 


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (4 preceding siblings ...)
  2007-06-13 22:47 ` tdragon at tdragon dot net
@ 2007-06-20 14:45 ` tdragon at tdragon dot net
  2007-06-20 14:47 ` tdragon at tdragon dot net
                   ` (27 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-20 14:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from tdragon at tdragon dot net  2007-06-20 14:44 -------
Created an attachment (id=13743)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13743&action=view)
Better testcase; compile with -O2, use with alias_main.c

Compiling this file with -O2 and linking with the object file from alias_main.c
creates a program that demonstrates the miscompilation. Curiously, compiling
with -O2 and -fno-strict-aliasing produces a correct compilation.


-- 

tdragon at tdragon dot net changed:

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


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (5 preceding siblings ...)
  2007-06-20 14:45 ` tdragon at tdragon dot net
@ 2007-06-20 14:47 ` tdragon at tdragon dot net
  2007-06-20 14:52 ` tdragon at tdragon dot net
                   ` (26 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-20 14:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from tdragon at tdragon dot net  2007-06-20 14:46 -------
Created an attachment (id=13744)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13744&action=view)
Better testcase pt.2; use with alias1.c

Compile this file with any or no additional options as desired; linking with
the object file from alias1.c to create a program that demonstrates the
miscompilation, if alias1.c was compiled with -O2.


-- 


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


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

* [Bug tree-optimization/32328] 4.2.0: -O2 causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (6 preceding siblings ...)
  2007-06-20 14:47 ` tdragon at tdragon dot net
@ 2007-06-20 14:52 ` tdragon at tdragon dot net
  2007-06-20 15:13 ` [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing " rguenth at gcc dot gnu dot org
                   ` (25 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-20 14:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from tdragon at tdragon dot net  2007-06-20 14:52 -------
Not seeing any further action or confirmation on this yet, I've gone ahead and
created a simpler testcase. It's plain that, when using -O2, line 14 of
alias1.c is skipped.


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (7 preceding siblings ...)
  2007-06-20 14:52 ` tdragon at tdragon dot net
@ 2007-06-20 15:13 ` rguenth at gcc dot gnu dot org
  2007-06-20 15:16 ` [Bug tree-optimization/32328] [4.2/4.3 " rguenth at gcc dot gnu dot org
                   ` (24 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-06-20 15:13 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenth at gcc dot gnu dot org  2007-06-20 15:12 -------
Confirmed.

struct barstruct { char const* some_string; };

void changethepointer(struct barstruct**);

void baz()
{
        struct barstruct bar1;
        struct barstruct* barptr = &bar1;
        changethepointer(&barptr);
        barptr->some_string = "Everything's OK!";
}


We end up with

baz ()
{
  struct barstruct * barptr;
  struct barstruct bar1;
  struct barstruct * barptr.0;

<bb 2>:
  #   barptr_2 = V_MUST_DEF <barptr_1>;
  barptr = &bar1;
  #   barptr_6 = V_MAY_DEF <barptr_2>;
  #   SFT.1_7 = V_MAY_DEF <SFT.1_4>;
  #   NONLOCAL.7_8 = V_MAY_DEF <NONLOCAL.7_5>;
  changethepointer (&barptr);
  #   VUSE <barptr_6>;
  barptr.0_3 = barptr;
  #   SFT.1_9 = V_MAY_DEF <SFT.1_7>;
  barptr.0_3->some_string = &"Everything\'s OK!"[0];
  return;

}

because of a wrong points-to set again:

barptr.0_3 = { bar1 }

The constraints are

Constraints: 

ANYTHING = &ANYTHING
READONLY = &ANYTHING
INTEGER = &ANYTHING
ESCAPED_VARS = *ESCAPED_VARS
NONLOCAL.7 = ESCAPED_VARS
ESCAPED_VARS = &NONLOCAL.7
ESCAPED_VARS = &NONLOCAL.7
barptr = &bar1
ESCAPED_VARS = &bar1
ESCAPED_VARS = &barptr
barptr.0_3 = barptr

where ESCAPED_VARS = &barptr looks wrong?  I'd say it needs to be
ESCAPED_VARS = barptr instead.

Danny?


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dberlin at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-06-20 15:12:52
               date|                            |
            Summary|4.2.0: -O2 causes skipped   |[4.2 Regression] -fstrict-
                   |code                        |aliasing causes skipped code


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (8 preceding siblings ...)
  2007-06-20 15:13 ` [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing " rguenth at gcc dot gnu dot org
@ 2007-06-20 15:16 ` rguenth at gcc dot gnu dot org
  2007-06-20 15:36 ` tdragon at tdragon dot net
                   ` (23 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-06-20 15:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from rguenth at gcc dot gnu dot org  2007-06-20 15:16 -------
trunk has the same problem, but different constraints:

Constraints:

ANYTHING = &ANYTHING
READONLY = &ANYTHING
INTEGER = &ANYTHING
barptr = &bar1
barptr.0_1 = barptr

Points-to sets

NULL = { }
ANYTHING = { ANYTHING }
READONLY = { ANYTHING }
INTEGER = { ANYTHING }
barptr = { bar1 }
bar1 = { }
barptr.0_1 = same as barptr


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |4.1.2
            Summary|[4.2 Regression] -fstrict-  |[4.2/4.3 Regression] -
                   |aliasing causes skipped code|fstrict-aliasing causes
                   |                            |skipped code


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (9 preceding siblings ...)
  2007-06-20 15:16 ` [Bug tree-optimization/32328] [4.2/4.3 " rguenth at gcc dot gnu dot org
@ 2007-06-20 15:36 ` tdragon at tdragon dot net
  2007-06-20 20:04 ` dberlin at dberlin dot org
                   ` (22 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2007-06-20 15:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from tdragon at tdragon dot net  2007-06-20 15:35 -------
Not sure if this is relevant or just GCC working differently on my target
system, but I don't encounter the bug using -fstrict-aliasing, or in fact using
individually the entire set of options under -O and -O2 on
http://gcc.gnu.org/onlinedocs/gcc-4.2.0/gcc/Optimize-Options.html -- only when
I specifically use the option "-O2".

i.e. "gcc -fstrict-aliasing -c alias1.c" DOESN'T, for me, cause the bug
but  "gcc -O2 -c alias1.c" DOES.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (10 preceding siblings ...)
  2007-06-20 15:36 ` tdragon at tdragon dot net
@ 2007-06-20 20:04 ` dberlin at dberlin dot org
  2007-06-20 20:09 ` dberlin at gcc dot gnu dot org
                   ` (21 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at dberlin dot org @ 2007-06-20 20:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from dberlin at gcc dot gnu dot org  2007-06-20 20:03 -------
Subject: Re:  [4.2 Regression] -fstrict-aliasing causes skipped code

On 20 Jun 2007 15:12:53 -0000, rguenth at gcc dot gnu dot org
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> ------- Comment #9 from rguenth at gcc dot gnu dot org  2007-06-20 15:12 -------
> Confirmed.
>
> struct barstruct { char const* some_string; };
>
> void changethepointer(struct barstruct**);
>
> void baz()
> {
>         struct barstruct bar1;
>         struct barstruct* barptr = &bar1;
>         changethepointer(&barptr);
>         barptr->some_string = "Everything's OK!";
> }
>
>
> We end up with
>
> baz ()
> {
>   struct barstruct * barptr;
>   struct barstruct bar1;
>   struct barstruct * barptr.0;
>
> <bb 2>:
>   #   barptr_2 = V_MUST_DEF <barptr_1>;
>   barptr = &bar1;
>   #   barptr_6 = V_MAY_DEF <barptr_2>;
>   #   SFT.1_7 = V_MAY_DEF <SFT.1_4>;
>   #   NONLOCAL.7_8 = V_MAY_DEF <NONLOCAL.7_5>;
>   changethepointer (&barptr);
>   #   VUSE <barptr_6>;
>   barptr.0_3 = barptr;
>   #   SFT.1_9 = V_MAY_DEF <SFT.1_7>;
>   barptr.0_3->some_string = &"Everything\'s OK!"[0];
>   return;
>
> }
>
> because of a wrong points-to set again:

Why do you believe this is wrong?
It looks exactly right

>
> barptr.0_3 = { bar1 }
>
> The constraints are
>
> Constraints:
>
> ANYTHING = &ANYTHING
> READONLY = &ANYTHING
> INTEGER = &ANYTHING
> ESCAPED_VARS = *ESCAPED_VARS
> NONLOCAL.7 = ESCAPED_VARS
> ESCAPED_VARS = &NONLOCAL.7
> ESCAPED_VARS = &NONLOCAL.7
> barptr = &bar1
> ESCAPED_VARS = &bar1
> ESCAPED_VARS = &barptr
> barptr.0_3 = barptr
>
> where ESCAPED_VARS = &barptr looks wrong?  I'd say it needs to be
> ESCAPED_VARS = barptr instead.

No, it's right on that part.  It says ESCAPED_VARS points to barptr.
ESCAPED_VARS = *ESCAPED_VARS will take care of making it point what
barptr points to.

What is missing here is that we should be doing barptr = ESCAPED_VARS
when we see &barptr passed to the call.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (11 preceding siblings ...)
  2007-06-20 20:04 ` dberlin at dberlin dot org
@ 2007-06-20 20:09 ` dberlin at gcc dot gnu dot org
  2007-07-04  3:29 ` mmitchel at gcc dot gnu dot org
                   ` (20 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2007-06-20 20:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from dberlin at gcc dot gnu dot org  2007-06-20 20:09 -------
(In reply to comment #10)
> trunk has the same problem, but different constraints:
> 
> Constraints:
> 
> ANYTHING = &ANYTHING
> READONLY = &ANYTHING
> INTEGER = &ANYTHING
> barptr = &bar1
> barptr.0_1 = barptr
> 
> Points-to sets
> 
> NULL = { }
> ANYTHING = { ANYTHING }
> READONLY = { ANYTHING }
> INTEGER = { ANYTHING }
> barptr = { bar1 }
> bar1 = { }
> barptr.0_1 = same as barptr
> 


Same thing, when we see call(&barptr), we should say barptr = ANYTHING.
.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (12 preceding siblings ...)
  2007-06-20 20:09 ` dberlin at gcc dot gnu dot org
@ 2007-07-04  3:29 ` mmitchel at gcc dot gnu dot org
  2007-07-04 14:16   ` Daniel Berlin
  2007-07-04 14:17 ` dberlin at dberlin dot org
                   ` (19 subsequent siblings)
  33 siblings, 1 reply; 36+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-07-04  3:29 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

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


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


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

* Re: [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-07-04  3:29 ` mmitchel at gcc dot gnu dot org
@ 2007-07-04 14:16   ` Daniel Berlin
  0 siblings, 0 replies; 36+ messages in thread
From: Daniel Berlin @ 2007-07-04 14:16 UTC (permalink / raw)
  To: gcc-bugzilla; +Cc: gcc-bugs

On 4 Jul 2007 03:29:25 -0000, mmitchel at gcc dot gnu dot org
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> --

Just as an update:
I have been working with richi (I code, he tests :P) diligently on a
patch for mainline, and have one that fixes the dealii regression (and
thus, should fix this as well).


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (13 preceding siblings ...)
  2007-07-04  3:29 ` mmitchel at gcc dot gnu dot org
@ 2007-07-04 14:17 ` dberlin at dberlin dot org
  2007-07-16 13:39 ` giovannibajo at libero dot it
                   ` (18 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at dberlin dot org @ 2007-07-04 14:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from dberlin at gcc dot gnu dot org  2007-07-04 14:16 -------
Subject: Re:  [4.2/4.3 Regression] -fstrict-aliasing causes skipped code

On 4 Jul 2007 03:29:25 -0000, mmitchel at gcc dot gnu dot org
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> --

Just as an update:
I have been working with richi (I code, he tests :P) diligently on a
patch for mainline, and have one that fixes the dealii regression (and
thus, should fix this as well).


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (14 preceding siblings ...)
  2007-07-04 14:17 ` dberlin at dberlin dot org
@ 2007-07-16 13:39 ` giovannibajo at libero dot it
  2007-07-16 13:58 ` dberlin at dberlin dot org
                   ` (17 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: giovannibajo at libero dot it @ 2007-07-16 13:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from giovannibajo at libero dot it  2007-07-16 13:39 -------
ping: anything that can be done for 4.2.1? This is a really serious regression.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (15 preceding siblings ...)
  2007-07-16 13:39 ` giovannibajo at libero dot it
@ 2007-07-16 13:58 ` dberlin at dberlin dot org
  2007-07-16 14:27 ` rguenth at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at dberlin dot org @ 2007-07-16 13:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from dberlin at gcc dot gnu dot org  2007-07-16 13:58 -------
Subject: Re:  [4.2/4.3 Regression] -fstrict-aliasing causes skipped code

I've attached a patch you should be able to quickly backport to 4.2.1.
 I'm still testing it against mainline right now.


On 16 Jul 2007 13:39:20 -0000, giovannibajo at libero dot it
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> ------- Comment #15 from giovannibajo at libero dot it  2007-07-16 13:39 -------
> ping: anything that can be done for 4.2.1? This is a really serious regression.
>


------- Comment #17 from dberlin at gcc dot gnu dot org  2007-07-16 13:58 -------
Created an attachment (id=13923)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13923&action=view)


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (16 preceding siblings ...)
  2007-07-16 13:58 ` dberlin at dberlin dot org
@ 2007-07-16 14:27 ` rguenth at gcc dot gnu dot org
  2007-07-16 15:51 ` rguenth at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-07-16 14:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from rguenth at gcc dot gnu dot org  2007-07-16 14:27 -------
Created an attachment (id=13924)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13924&action=view)
patch for 4.2

I'll bootstrap/regtest it.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (17 preceding siblings ...)
  2007-07-16 14:27 ` rguenth at gcc dot gnu dot org
@ 2007-07-16 15:51 ` rguenth at gcc dot gnu dot org
  2007-07-16 22:29 ` dberlin at dberlin dot org
                   ` (14 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-07-16 15:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from rguenth at gcc dot gnu dot org  2007-07-16 15:51 -------
The backported patch causes 

FAIL: gcc.c-torture/execute/pr28778.c execution,  -O2 
FAIL: gcc.c-torture/execute/pr28778.c execution,  -Os 

DCE removes

-
-<L1>:;
-  list[3] = 42;

we have one added constraint:

 blist.0_7 = blist_1
+*blist.0_7 = &ANYTHING
 ESCAPED_VARS = blist.0_7

IL differences after alias1 are

@@ -251,12 +247,11 @@
   list[3] = 42;
   blist_6 = &list;

-  # list_8 = PHI <list_4(3), list_5(4)>;
   # blist_1 = PHI <blist_3(3), blist_6(4)>;
 <L2>:;
   blist.0_7 = (const GLint *) blist_1;
-  #   list_10 = V_MAY_DEF <list_8>;
-  #   NONLOCAL.44_11 = V_MAY_DEF <NONLOCAL.44_9>;
+  #   NONLOCAL.44_10 = V_MAY_DEF <NONLOCAL.44_8>;
+  #   SMT.45_11 = V_MAY_DEF <SMT.45_9>;
   aglChoosePixelFormat (blist.0_7);
   return;

we also have

+NULL = &ANYTHING

but this doesn't result in IL differences.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (18 preceding siblings ...)
  2007-07-16 15:51 ` rguenth at gcc dot gnu dot org
@ 2007-07-16 22:29 ` dberlin at dberlin dot org
  2007-07-20  3:50 ` mmitchel at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at dberlin dot org @ 2007-07-16 22:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from dberlin at gcc dot gnu dot org  2007-07-16 22:29 -------
Subject: Re:  [4.2/4.3 Regression] -fstrict-aliasing causes skipped code

Oh, for 4.2 you need to add make_constraint_to_escaped_var

On 16 Jul 2007 15:51:44 -0000, rguenth at gcc dot gnu dot org
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> ------- Comment #19 from rguenth at gcc dot gnu dot org  2007-07-16 15:51 -------
> The backported patch causes
>
> FAIL: gcc.c-torture/execute/pr28778.c execution,  -O2
> FAIL: gcc.c-torture/execute/pr28778.c execution,  -Os
>
> DCE removes
>
> -
> -<L1>:;
> -  list[3] = 42;
>
> we have one added constraint:
>
>  blist.0_7 = blist_1
> +*blist.0_7 = &ANYTHING
>  ESCAPED_VARS = blist.0_7
>
> IL differences after alias1 are
>
> @@ -251,12 +247,11 @@
>    list[3] = 42;
>    blist_6 = &list;
>
> -  # list_8 = PHI <list_4(3), list_5(4)>;
>    # blist_1 = PHI <blist_3(3), blist_6(4)>;
>  <L2>:;
>    blist.0_7 = (const GLint *) blist_1;
> -  #   list_10 = V_MAY_DEF <list_8>;
> -  #   NONLOCAL.44_11 = V_MAY_DEF <NONLOCAL.44_9>;
> +  #   NONLOCAL.44_10 = V_MAY_DEF <NONLOCAL.44_8>;
> +  #   SMT.45_11 = V_MAY_DEF <SMT.45_9>;
>    aglChoosePixelFormat (blist.0_7);
>    return;

This is something that was fixed on 4.3 by proper SMT pruning.
What is happening is it decides to prune the list access even though
it's illegal to do so.


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (19 preceding siblings ...)
  2007-07-16 22:29 ` dberlin at dberlin dot org
@ 2007-07-20  3:50 ` mmitchel at gcc dot gnu dot org
  2007-08-19 23:24 ` dberlin at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-07-20  3:50 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.2.1                       |4.2.2


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (20 preceding siblings ...)
  2007-07-20  3:50 ` mmitchel at gcc dot gnu dot org
@ 2007-08-19 23:24 ` dberlin at gcc dot gnu dot org
  2007-08-20  1:54 ` dberlin at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2007-08-19 23:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from dberlin at gcc dot gnu dot org  2007-08-19 23:23 -------
Subject: Bug 32328

Author: dberlin
Date: Sun Aug 19 23:23:29 2007
New Revision: 127629

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127629
Log:
2007-08-19  Daniel Berlin  <dberlin@dberlin.org>

        Fix PR 32772
        Fix PR 32716
        Fix PR 32328
        Fix PR 32303

        * tree-flow.h (struct stmt_ann_d): Remove makes_clobbering_call.
        * tree-ssa-alias.c (init_transitive_clobber_worklist): Add
        on_worklist argument and avoid adding things to worklist multiple
        times.
        (add_to_worklist): Ditto.
        (mark_aliases_call_clobbered): Mark entire structure clobbered if
        single SFT is clobbered.
        (set_initial_properties): Ditto.
        (compute_call_clobbered): Update for changes to function
        arguments.
        (create_overlap_variables_for): Always create SFT for offset 0.
        (create_structure_vars): Handle PHI's, since we are in SSA form at
        this point.
        * tree-ssa-loop-ivopts.c (get_ref_tag): Don't return subvars.
        * tree-ssa-operands.c (access_can_touch_variable): Don't handle
        TARGET_MEM_REF.
        (add_vars_for_offset): Figure out aliases from access + points-to.
        (add_virtual_operand): Use add_vars-for_offset.
        (get_tmr_operands): Update for NMT changes, rewrite to be correct.
        (add_call_clobber_ops): Remove makes_clobbering_call set.
        (get_expr_operands): Always pass through the INDIRECT_REF
        reference.
        * tree-ssa-structalias.c (struct constraint_graph): Remove
        variables member.
        Add pe, pe_rep, pointer_label, loc_label, pointed_by, points_to,
        address_taken, pt_used, number_incoming.
        (FIRST_ADDR_NODE): Removed.
        (merge_graph_nodes): Remove broken code for the moment.
        (init_graph): New function.
        (build_pred_graph): Remove code to init_graph.
        Add location equivalence support.
        (struct scc_info): Rename roots to deleted.
        (scc_visit): Ditto.
        (init_scc_info): Ditto
        (init_topo_info): Use graph->size.
        (compute_topo_order): Ditto.
        (do_da_constraint): Removed.
        (do_sd_constraint): Remove calls to find().
        set_union_with_increment should always get 0 as last arg here.
        (do_complex_constraint): Replace do_da_constraint with assert.
        Stop calling find.
        (struct equiv_class_label): New.
        (pointer_equiv_class_table): Ditto.
        (location_equiv_class_table): Ditto.
        (equiv_class_label_hash): Ditto.
        (equiv_class_label_eq): Ditto
        (equiv_class_lookup): Ditto.
        (equiv_class_ladd): Ditto.
        (pointer_equiv_class): Ditto.
        (location_equiv_class): Ditto.
        (condense_visit): Rename and rewrite from label_visit to do only
        SCC related stuff for HU.
        (label_visit): Do HU work for HU.
        (perform_var_substitution): Update to do HU and location
        equivalence.
        (free_var_substitution_info): Update to free HU and location
        equivalence structures.  */
        (find_equivalent_node): Update for pointer but not location
        equivalence.
        (unite_pointer_equivalences): New function.
        (move_complex_constraints): Rewrite to only do moving.
        (rewrite_constraints): Split out of move_complex_constraints.
        (solve_graph): Use graph->size.
        (process_constraint_1): Add from_call argument, use it.
        Split *a = &b into two constraints.
        (process_constraint): Use new process_constraint_1.
        (get_constraint_for_component_ref): Handle bitmaxsize == -1 case.
        (get_constraint_for): Handle non-pointer integers properly.
        Remove code that used to handle structures.
        (handle_ptr_arith): Fix a few bugs in pointer arithmetic handling
        with unknown addends.
        (handle_rhs_call): New function.
        (find_func_aliases): Use handle_rhs_call.
        (set_uids_in_ptset): Add an assert.
        (set_used_smts): Fix bug in not considering unified vars.
        (compute_tbaa_pruning): Stop initing useless iteration_obstack.
        (compute_points_to_sets): Update for other function changes.
        (delete_points_to_sets): Ditto.
        (ipa_pta_execute): Ditto.
        (pass_ipa_pta): We need to update SSA after ipa_pta.



Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/tree-flow.h
    trunk/gcc/tree-ssa-alias.c
    trunk/gcc/tree-ssa-loop-ivopts.c
    trunk/gcc/tree-ssa-operands.c
    trunk/gcc/tree-ssa-structalias.c


-- 


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (21 preceding siblings ...)
  2007-08-19 23:24 ` dberlin at gcc dot gnu dot org
@ 2007-08-20  1:54 ` dberlin at gcc dot gnu dot org
  2007-08-22 15:52 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at gcc dot gnu dot org @ 2007-08-20  1:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from dberlin at gcc dot gnu dot org  2007-08-20 01:54 -------
All should be fixed


-- 

dberlin at gcc dot gnu dot org changed:

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


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


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

* [Bug tree-optimization/32328] [4.2/4.3 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (22 preceding siblings ...)
  2007-08-20  1:54 ` dberlin at gcc dot gnu dot org
@ 2007-08-22 15:52 ` rguenth at gcc dot gnu dot org
  2007-08-23 12:42 ` [Bug tree-optimization/32328] [4.2 " rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-08-22 15:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #23 from rguenth at gcc dot gnu dot org  2007-08-22 15:52 -------
But not with 4.2.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
      Known to fail|4.2.0 4.3.0                 |4.2.0 4.2.1
      Known to work|4.1.2                       |4.1.2 4.3.0
         Resolution|FIXED                       |


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (23 preceding siblings ...)
  2007-08-22 15:52 ` rguenth at gcc dot gnu dot org
@ 2007-08-23 12:42 ` rguenth at gcc dot gnu dot org
  2007-09-05  6:47 ` giovannibajo at libero dot it
                   ` (8 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-08-23 12:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #24 from rguenth at gcc dot gnu dot org  2007-08-23 12:42 -------
Subject: Bug 32328

Author: rguenth
Date: Thu Aug 23 12:41:59 2007
New Revision: 127736

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=127736
Log:
2007-08-23  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/32328
        * testsuite/gcc.dg/pr32328.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/pr32328.c
Modified:
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (24 preceding siblings ...)
  2007-08-23 12:42 ` [Bug tree-optimization/32328] [4.2 " rguenth at gcc dot gnu dot org
@ 2007-09-05  6:47 ` giovannibajo at libero dot it
  2007-09-05  8:29 ` rguenth at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: giovannibajo at libero dot it @ 2007-09-05  6:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #25 from giovannibajo at libero dot it  2007-09-05 06:47 -------
Daniel, can we backport this patch to 4.2, please? It's a P1 regression!


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (25 preceding siblings ...)
  2007-09-05  6:47 ` giovannibajo at libero dot it
@ 2007-09-05  8:29 ` rguenth at gcc dot gnu dot org
  2007-09-05 11:51 ` dberlin at dberlin dot org
                   ` (6 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-09-05  8:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #26 from rguenth at gcc dot gnu dot org  2007-09-05 08:29 -------
Not really.


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (26 preceding siblings ...)
  2007-09-05  8:29 ` rguenth at gcc dot gnu dot org
@ 2007-09-05 11:51 ` dberlin at dberlin dot org
  2007-10-09 19:30 ` mmitchel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: dberlin at dberlin dot org @ 2007-09-05 11:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #27 from dberlin at gcc dot gnu dot org  2007-09-05 11:51 -------
Subject: Re:  [4.2 Regression] -fstrict-aliasing causes skipped code

On 5 Sep 2007 06:47:19 -0000, giovannibajo at libero dot it
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> ------- Comment #25 from giovannibajo at libero dot it  2007-09-05 06:47 -------
> Daniel, can we backport this patch to 4.2, please? It's a P1 regression!
>

Not really.
We've tried before, and it causes other regressions in 4.2 due to
missing infrastructure.


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (27 preceding siblings ...)
  2007-09-05 11:51 ` dberlin at dberlin dot org
@ 2007-10-09 19:30 ` mmitchel at gcc dot gnu dot org
  2008-02-01 17:05 ` jsm28 at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-10-09 19:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #28 from mmitchel at gcc dot gnu dot org  2007-10-09 19:20 -------
Change target milestone to 4.2.3, as 4.2.2 has been released.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.2.2                       |4.2.3


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (28 preceding siblings ...)
  2007-10-09 19:30 ` mmitchel at gcc dot gnu dot org
@ 2008-02-01 17:05 ` jsm28 at gcc dot gnu dot org
  2008-02-22 18:15 ` tdragon at tdragon dot net
                   ` (3 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-02-01 17:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #29 from jsm28 at gcc dot gnu dot org  2008-02-01 16:54 -------
4.2.3 is being released now, changing milestones of open bugs to 4.2.4.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.2.3                       |4.2.4


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (29 preceding siblings ...)
  2008-02-01 17:05 ` jsm28 at gcc dot gnu dot org
@ 2008-02-22 18:15 ` tdragon at tdragon dot net
  2008-02-22 18:48 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  33 siblings, 0 replies; 36+ messages in thread
From: tdragon at tdragon dot net @ 2008-02-22 18:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #30 from tdragon at tdragon dot net  2008-02-22 18:14 -------
Are there sufficient motivation and resources to fix this bug in 4.2? Since 4.3
is soon-to-be, an update on this would be sincerely appreciated -- even if it's
just forgetting about 4.2 and resolving as FIXED.


-- 


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (30 preceding siblings ...)
  2008-02-22 18:15 ` tdragon at tdragon dot net
@ 2008-02-22 18:48 ` pinskia at gcc dot gnu dot org
  2008-05-19 20:27 ` jsm28 at gcc dot gnu dot org
  2009-03-30 22:07 ` jsm28 at gcc dot gnu dot org
  33 siblings, 0 replies; 36+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2008-02-22 18:48 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|major                       |normal


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (31 preceding siblings ...)
  2008-02-22 18:48 ` pinskia at gcc dot gnu dot org
@ 2008-05-19 20:27 ` jsm28 at gcc dot gnu dot org
  2009-03-30 22:07 ` jsm28 at gcc dot gnu dot org
  33 siblings, 0 replies; 36+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-05-19 20:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #31 from jsm28 at gcc dot gnu dot org  2008-05-19 20:23 -------
4.2.4 is being released, changing milestones to 4.2.5.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.2.4                       |4.2.5


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


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

* [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code
  2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
                   ` (32 preceding siblings ...)
  2008-05-19 20:27 ` jsm28 at gcc dot gnu dot org
@ 2009-03-30 22:07 ` jsm28 at gcc dot gnu dot org
  33 siblings, 0 replies; 36+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2009-03-30 22:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #32 from jsm28 at gcc dot gnu dot org  2009-03-30 22:07 -------
Closing 4.2 branch, fixed in 4.3.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
      Known to fail|4.2.0 4.2.1 4.2.2           |4.2.0 4.2.1 4.2.2 4.2.5
         Resolution|                            |FIXED
   Target Milestone|4.2.5                       |4.3.0


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


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

end of thread, other threads:[~2009-03-30 22:07 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-06-13 21:18 [Bug c/32328] New: 4.2.0: -O2 causes skipped code tdragon at tdragon dot net
2007-06-13 21:20 ` [Bug c/32328] " tdragon at tdragon dot net
2007-06-13 22:21 ` [Bug rtl-optimization/32328] " pinskia at gcc dot gnu dot org
2007-06-13 22:27 ` [Bug tree-optimization/32328] " tdragon at tdragon dot net
2007-06-13 22:36 ` tdragon at tdragon dot net
2007-06-13 22:47 ` tdragon at tdragon dot net
2007-06-20 14:45 ` tdragon at tdragon dot net
2007-06-20 14:47 ` tdragon at tdragon dot net
2007-06-20 14:52 ` tdragon at tdragon dot net
2007-06-20 15:13 ` [Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing " rguenth at gcc dot gnu dot org
2007-06-20 15:16 ` [Bug tree-optimization/32328] [4.2/4.3 " rguenth at gcc dot gnu dot org
2007-06-20 15:36 ` tdragon at tdragon dot net
2007-06-20 20:04 ` dberlin at dberlin dot org
2007-06-20 20:09 ` dberlin at gcc dot gnu dot org
2007-07-04  3:29 ` mmitchel at gcc dot gnu dot org
2007-07-04 14:16   ` Daniel Berlin
2007-07-04 14:17 ` dberlin at dberlin dot org
2007-07-16 13:39 ` giovannibajo at libero dot it
2007-07-16 13:58 ` dberlin at dberlin dot org
2007-07-16 14:27 ` rguenth at gcc dot gnu dot org
2007-07-16 15:51 ` rguenth at gcc dot gnu dot org
2007-07-16 22:29 ` dberlin at dberlin dot org
2007-07-20  3:50 ` mmitchel at gcc dot gnu dot org
2007-08-19 23:24 ` dberlin at gcc dot gnu dot org
2007-08-20  1:54 ` dberlin at gcc dot gnu dot org
2007-08-22 15:52 ` rguenth at gcc dot gnu dot org
2007-08-23 12:42 ` [Bug tree-optimization/32328] [4.2 " rguenth at gcc dot gnu dot org
2007-09-05  6:47 ` giovannibajo at libero dot it
2007-09-05  8:29 ` rguenth at gcc dot gnu dot org
2007-09-05 11:51 ` dberlin at dberlin dot org
2007-10-09 19:30 ` mmitchel at gcc dot gnu dot org
2008-02-01 17:05 ` jsm28 at gcc dot gnu dot org
2008-02-22 18:15 ` tdragon at tdragon dot net
2008-02-22 18:48 ` pinskia at gcc dot gnu dot org
2008-05-19 20:27 ` jsm28 at gcc dot gnu dot org
2009-03-30 22:07 ` jsm28 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).