public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/27437]  New: [4.2 Regression]: -O3 regression due to SEE
@ 2006-05-04 19:11 hjl at lucon dot org
  2006-05-04 19:22 ` [Bug rtl-optimization/27437] " pinskia at gcc dot gnu dot org
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: hjl at lucon dot org @ 2006-05-04 19:11 UTC (permalink / raw)
  To: gcc-bugs

The new SEE pass is turned on by -O3, which introduces several regressions on
Linux/x86 and probably on Linux/x86-64:

http://gcc.gnu.org/ml/gcc-testresults/2006-05/msg00171.html

shows

FAIL: gcc.c-torture/compile/pr20539-1.c  -O3 -fomit-frame-pointer  (test for
excess errors)
FAIL: gcc.c-torture/compile/pr20539-1.c  -O3 -g  (test for excess errors)
FAIL: gcc.c-torture/execute/20050121-1.c compilation,  -O3 -fomit-frame-pointer 
UNRESOLVED: gcc.c-torture/execute/20050121-1.c execution,  -O3
-fomit-frame-pointer 
FAIL: gcc.c-torture/execute/20050121-1.c compilation,  -O3 -g 
UNRESOLVED: gcc.c-torture/execute/20050121-1.c execution,  -O3 -g 
FAIL: gcc.c-torture/execute/930603-3.c compilation,  -O3 -fomit-frame-pointer 
UNRESOLVED: gcc.c-torture/execute/930603-3.c execution,  -O3
-fomit-frame-pointer 
FAIL: gcc.c-torture/execute/930603-3.c compilation,  -O3 -g 
UNRESOLVED: gcc.c-torture/execute/930603-3.c execution,  -O3 -g 
FAIL: gcc.c-torture/execute/arith-rand-ll.c compilation,  -O3
-fomit-frame-pointer 
UNRESOLVED: gcc.c-torture/execute/arith-rand-ll.c execution,  -O3
-fomit-frame-pointer 
FAIL: gcc.c-torture/execute/arith-rand-ll.c compilation,  -O3 -g 
UNRESOLVED: gcc.c-torture/execute/arith-rand-ll.c execution,  -O3 -g 
FAIL: gcc.c-torture/unsorted/udivmod4.c,  -O3 -fomit-frame-pointer  
FAIL: gcc.c-torture/unsorted/udivmod4.c,  -O3 -g

which aren't in

http://gcc.gnu.org/ml/gcc-testresults/2006-05/msg00073.html


-- 
           Summary: [4.2 Regression]: -O3 regression due to SEE
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hjl at lucon dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
@ 2006-05-04 19:22 ` pinskia at gcc dot gnu dot org
  2006-05-04 23:01 ` pinskia at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-04 19:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-04 19:21 -------
One reduced testcase while bootstrapping:
int partition_new (int *e1, int *e2)
{
  if (e1 < e2)
    return -1;
  else if (e1 > e2)
    return 1;
  return 0;
}


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.2.0


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
  2006-05-04 19:22 ` [Bug rtl-optimization/27437] " pinskia at gcc dot gnu dot org
@ 2006-05-04 23:01 ` pinskia at gcc dot gnu dot org
  2006-05-05 12:39 ` reichelt at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-04 23:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-04 23:01 -------
(In reply to comment #1)
> One reduced testcase while bootstrapping:

In that testcase, we produce a subreg of mode QI and also a zero entend of SI. 
Both of those look wrong in general, maybe that is just -march=i386 playing
tricks as we get int(bool(t < t1)) (which of course should have been simplified
after PHI -OPT to t < t1 but does not because 1, there is no tree combiner or
2) we don't fold as we come out of SSA.


-- 

pinskia 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         |2006-05-04 23:01:09
               date|                            |


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
  2006-05-04 19:22 ` [Bug rtl-optimization/27437] " pinskia at gcc dot gnu dot org
  2006-05-04 23:01 ` pinskia at gcc dot gnu dot org
@ 2006-05-05 12:39 ` reichelt at gcc dot gnu dot org
  2006-05-05 12:42 ` reichelt at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-05-05 12:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from reichelt at gcc dot gnu dot org  2006-05-05 12:39 -------
*** Bug 27443 has been marked as a duplicate of this bug. ***


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |fxcoudert at gcc dot gnu dot
                   |                            |org


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (2 preceding siblings ...)
  2006-05-05 12:39 ` reichelt at gcc dot gnu dot org
@ 2006-05-05 12:42 ` reichelt at gcc dot gnu dot org
  2006-05-05 13:02 ` hjl at lucon dot org
                   ` (14 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-05-05 12:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from reichelt at gcc dot gnu dot org  2006-05-05 12:41 -------
Here's a testcase that crashes on x86_64-unknown-linux-gnu with -O3
or -O2 -fsee:

====================================
unsigned char foo(unsigned char i)
{
  while (1 << i)
    --i;
  return i;
}
====================================


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
           Severity|normal                      |critical


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (3 preceding siblings ...)
  2006-05-05 12:42 ` reichelt at gcc dot gnu dot org
@ 2006-05-05 13:02 ` hjl at lucon dot org
  2006-05-05 15:04 ` pinskia at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: hjl at lucon dot org @ 2006-05-05 13:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from hjl at lucon dot org  2006-05-05 13:01 -------
There are several problems with the current SEE implementation:

1. SEE uses NEXT_INSN/PREV_INSN to find adjacent insns to check if SEE
is safe. But with -g, NEXT_INSN/PREV_INSN may point to a NOTE:

(note:HI 17 14 18 2
("/net/gnu-13/export/gnu/src/gcc-see/gcc/gcc/testsuite/gcc.c-torture/execute/20010224-1.c")
18)

(insn:HI 18 17 19 2
/net/gnu-13/export/gnu/src/gcc-see/gcc/gcc/testsuite/gcc.c-torture/execute/20010224-1.c:18
(set (reg/v:SI 70 [ j ])
        (sign_extend:SI (subreg:HI (reg:SI 72 [ start ]) 0))) 118 {extendhisi2}
(insn_list:REG_DEP_TRUE 12 (nil))
    (expr_list:REG_DEAD (reg:SI 72 [ start ])
        (nil)))

(note:HI 19 18 20 2
("/net/gnu-13/export/gnu/src/gcc-see/gcc/gcc/testsuite/gcc.c-torture/execute/20010224-1.c")
19)

(insn:HI 20 19 22 2
/net/gnu-13/export/gnu/src/gcc-see/gcc/gcc/testsuite/gcc.c-torture/execute/20010224-1.c:19
(set (reg:DI 73 [ j ])
        (sign_extend:DI (reg/v:SI 70 [ j ]))) 115 {extendsidi2_rex64}
(insn_list:REG_DEP_TRUE 18 (nil))
    (nil))

Those notes may be added between insns because -g. NEXT_INSN/PREV_INSN
won't get you the adjacent insn in this case.

2. Not all zero_extend patterns are available for x86/x86-64. For
example:

(insn 137 0 0 (set (reg:SI 60 [ prephitmp.115 ])
        (zero_extend:SI (subreg:QI (reg:SI 60 [ prephitmp.115 ]) 0)))
-1 (nil)
    (nil))

may not be used on x86/x86-64. i386.md has

(define_expand "zero_extendqisi2"
  [(parallel
    [(set (match_operand:SI 0 "register_operand" "")
       (zero_extend:SI (match_operand:QI 1 "nonimmediate_operand" "")))
     (clobber (reg:CC FLAGS_REG))])]
  ""
  "")

This is case for all extensions for i386.  For x86-64, only
zero_extendsidi2 won't clobber CC. But SEE doesn't provide a way for a backend
to deal with it.

3. When the original insns were

set (dest_extension_reg1) (sign_extend (source_extension_reg1))
set (dest_extension_reg2) (sign_extend (dest_extension_reg1))

We created

ref: set (dest_extension_reg1) (sign_extend (source_extension_reg1))
def_se: set (dest_extension_reg2) (sign_extend (dest_extension_reg1))

and

use_se: set (dest_extension_reg1) (sign_extend (dest_extension_reg1))
ref: set (dest_extension_reg2) (sign_extend (dest_extension_reg1))

When def merge failed, def_se was deleted. Now use_se had a deleted
ref.

Basically, SEE doesn't handle

(set (reg/v:SI 70 [ j ])
  (sign_extend:SI (subreg:HI (reg:SI 72 [ start ]) 0)))
(set (reg:DI 73 [ j ])
  (sign_extend:DI (reg/v:SI 70 [ j ])))

correctly.

4. SEE also failed to handle

set (dest_extension_reg1) (zero_extend (source_extension_reg1))
set (reg) (..dest_extension_reg1..)
set (dest_extension_reg2) (sign_extend (source_extension_reg1))

(insn:HI 28 26 30 2 x.c:1201 (set (reg:DI 534 [ mode ])
        (zero_extend:DI (reg/v:SI 264 [ mode ]))) 111
{zero_extendsidi2_rex64}
(insn_list:REG_DEP_TRUE 11 (nil))
    (nil))

(insn:HI 30 28 269 2 x.c:1201 (set (reg:QI 261 [ D.24257 ])
        (mem/s/u:QI (plus:DI (reg:DI 534 [ mode ])
                (symbol_ref:DI ("mode_class") [flags 0x40] <var_decl
0x2a98a42630 mode_class>)) [0 mode_class S1 A8])) 55 {*movqi_1}
(insn_list:REG_DEP_TRUE 28 (nil))
    (nil))

(insn:HI 269 30 270 2 x.c:1273 (set (reg:DI 546)
        (sign_extend:DI (reg/v:SI 264 [ mode ]))) 115
{extendsidi2_rex64} (nil)
    (nil))

#3 and #4 may happen since SEE uses NEXT_INSN/PREV_INSN to check
the adjacent insn. When -g is used, SEE may see the note instead of
the real adjacent insn and reaches wrong conclusion. It may lead to
compiler crash or wrong code.


-- 


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (4 preceding siblings ...)
  2006-05-05 13:02 ` hjl at lucon dot org
@ 2006-05-05 15:04 ` pinskia at gcc dot gnu dot org
  2006-05-05 15:46 ` hjl at lucon dot org
                   ` (12 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-05 15:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2006-05-05 15:04 -------
(In reply to comment #5)
> There are several problems with the current SEE implementation:
> 
> 1. SEE uses NEXT_INSN/PREV_INSN to find adjacent insns to check if SEE
> is safe. But with -g, NEXT_INSN/PREV_INSN may point to a NOTE:
> 

That one is easy to fix.  Please post a patch to using
next_nonnote_insn/prev_nonnote_insn instead.

And then the -O3 (without -g) is a different issue.


-- 


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (5 preceding siblings ...)
  2006-05-05 15:04 ` pinskia at gcc dot gnu dot org
@ 2006-05-05 15:46 ` hjl at lucon dot org
  2006-05-05 15:49 ` hjl at lucon dot org
                   ` (11 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: hjl at lucon dot org @ 2006-05-05 15:46 UTC (permalink / raw)
  To: gcc-bugs



-- 

hjl at lucon dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |denis dot nagorny at intel
                   |                            |dot com
           Severity|critical                    |normal
   Target Milestone|4.2.0                       |---


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


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

* [Bug rtl-optimization/27437] [4.2 Regression]: -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (6 preceding siblings ...)
  2006-05-05 15:46 ` hjl at lucon dot org
@ 2006-05-05 15:49 ` hjl at lucon dot org
  2006-05-05 16:49 ` [Bug rtl-optimization/27437] [4.2 Regression] " pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: hjl at lucon dot org @ 2006-05-05 15:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from hjl at lucon dot org  2006-05-05 15:49 -------
(In reply to comment #6)
> (In reply to comment #5)
> > There are several problems with the current SEE implementation:
> > 
> > 1. SEE uses NEXT_INSN/PREV_INSN to find adjacent insns to check if SEE
> > is safe. But with -g, NEXT_INSN/PREV_INSN may point to a NOTE:
> > 
> 
> That one is easy to fix.  Please post a patch to using
> next_nonnote_insn/prev_nonnote_insn instead.
> 
> And then the -O3 (without -g) is a different issue.
> 


You are right. Using next_nonnote_insn/prev_nonnote_insn won't solve  -O3
(without -g). One real problem is SEE can't determine if SEE is safe by just
looking at next_nonnote_insn/prev_nonnote_insn. The relevant insn may be a few
more insns away. Denis, do you have a patch to address this?


-- 


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


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

* [Bug rtl-optimization/27437] [4.2 Regression] -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (7 preceding siblings ...)
  2006-05-05 15:49 ` hjl at lucon dot org
@ 2006-05-05 16:49 ` pinskia at gcc dot gnu dot org
  2006-05-05 21:15 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-05 16:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2006-05-05 16:49 -------
(In reply to comment #7)
>
> You are right. Using next_nonnote_insn/prev_nonnote_insn won't solve  -O3
> (without -g). One real problem is SEE can't determine if SEE is safe by just
> looking at next_nonnote_insn/prev_nonnote_insn. The relevant insn may be a few
> more insns away. Denis, do you have a patch to address this?

Maybe the real question is why did you not raise this publicly when it was
being reviewed.  Your terse style of reporting problems after the fact hurt
your crediablity (if there is any left now).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-valid-code
            Summary|[4.2 Regression]: -O3       |[4.2 Regression] -O3
                   |regression due to SEE       |regression due to SEE
   Target Milestone|---                         |4.2.0


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


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

* [Bug rtl-optimization/27437] [4.2 Regression] -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (8 preceding siblings ...)
  2006-05-05 16:49 ` [Bug rtl-optimization/27437] [4.2 Regression] " pinskia at gcc dot gnu dot org
@ 2006-05-05 21:15 ` pinskia at gcc dot gnu dot org
  2006-05-05 22:18 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-05 21:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from pinskia at gcc dot gnu dot org  2006-05-05 21:15 -------
*** Bug 27450 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ismail at pardus dot org dot
                   |                            |tr


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


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

* [Bug rtl-optimization/27437] [4.2 Regression] -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (9 preceding siblings ...)
  2006-05-05 21:15 ` pinskia at gcc dot gnu dot org
@ 2006-05-05 22:18 ` pinskia at gcc dot gnu dot org
  2006-05-05 22:22 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-05 22:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from pinskia at gcc dot gnu dot org  2006-05-05 22:18 -------
Here is another testcase:
unsigned char clip_uint8(int a)
{
  if (a&(~255))
    return (-a)>>31;
  return a;
}


-- 


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


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

* [Bug rtl-optimization/27437] [4.2 Regression] -O3 regression due to SEE
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (10 preceding siblings ...)
  2006-05-05 22:18 ` pinskia at gcc dot gnu dot org
@ 2006-05-05 22:22 ` pinskia at gcc dot gnu dot org
  2006-05-07  8:24 ` [Bug rtl-optimization/27437] -O2 -fsee failures on x86 pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-05 22:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from pinskia at gcc dot gnu dot org  2006-05-05 22:22 -------
My last case looks like HJL's 4 case.  I wish x86 was not like this instead did
something different bug oh well

(insn:HI 6 8 7 2 (set (reg/v:SI 60 [ a ])
        (mem/c/i:SI (reg/f:SI 16 argp) [2 a+0 S4 A32])) 34 {*movsi_1} (nil)
    (expr_list:REG_EQUIV (mem/c/i:SI (reg/f:SI 16 argp) [2 a+0 S4 A32])
        (nil)))

......
(insn:HI 18 17 19 3 (parallel [
            (set (reg/v:SI 60 [ a ])
                (ashiftrt:SI (reg/v:SI 60 [ a ])
                    (const_int 31 [0x1f])))
            (clobber (reg:CC 17 flags))
        ]) 300 {*ashrsi3_1} (insn_list:REG_DEP_TRUE 17 (nil))
    (expr_list:REG_UNUSED (reg:CC 17 flags)
        (nil)))

(insn:HI 19 18 45 3 (parallel [
            (set (reg:SI 58 [ D.1524 ])
                (zero_extend:SI (subreg:QI (reg/v:SI 60 [ a ]) 0)))
            (clobber (reg:CC 17 flags))
        ]) 77 {*zero_extendqisi2_movzbw_and} (insn_list:REG_DEP_TRUE 18 (nil))
    (expr_list:REG_DEAD (reg/v:SI 60 [ a ])
        (expr_list:REG_UNUSED (reg:CC 17 flags)
            (nil))))

......
( Cannot get here from insn 19)

(insn:HI 25 23 26 4 (parallel [
            (set (reg:SI 58 [ D.1524 ])
                (zero_extend:SI (subreg:QI (reg/v:SI 60 [ a ]) 0)))
            (clobber (reg:CC 17 flags))
        ]) 77 {*zero_extendqisi2_movzbw_and} (nil)
    (expr_list:REG_DEAD (reg/v:SI 60 [ a ])
        (expr_list:REG_UNUSED (reg:CC 17 flags)
            (nil))))


-- 


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (11 preceding siblings ...)
  2006-05-05 22:22 ` pinskia at gcc dot gnu dot org
@ 2006-05-07  8:24 ` pinskia at gcc dot gnu dot org
  2006-05-29 22:31 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-07  8:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from pinskia at gcc dot gnu dot org  2006-05-07 08:24 -------
This is no longer a regession as -fsee is now disable at -O3.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[4.2 Regression] -O3        |-O2 -fsee failures on x86
                   |regression due to SEE       |
   Target Milestone|4.2.0                       |---


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (12 preceding siblings ...)
  2006-05-07  8:24 ` [Bug rtl-optimization/27437] -O2 -fsee failures on x86 pinskia at gcc dot gnu dot org
@ 2006-05-29 22:31 ` pinskia at gcc dot gnu dot org
  2006-05-29 22:32 ` pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-29 22:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from pinskia at gcc dot gnu dot org  2006-05-29 22:31 -------
These will all be fixed by:
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg01298.html


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2006-
                   |                            |05/msg01298.html
           Keywords|                            |patch


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (13 preceding siblings ...)
  2006-05-29 22:31 ` pinskia at gcc dot gnu dot org
@ 2006-05-29 22:32 ` pinskia at gcc dot gnu dot org
  2006-05-29 23:04 ` pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-29 22:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from pinskia at gcc dot gnu dot org  2006-05-29 22:32 -------
*** Bug 27472 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dcb314 at hotmail dot com


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (14 preceding siblings ...)
  2006-05-29 22:32 ` pinskia at gcc dot gnu dot org
@ 2006-05-29 23:04 ` pinskia at gcc dot gnu dot org
  2006-05-31  9:36 ` reichelt at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-29 23:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from pinskia at gcc dot gnu dot org  2006-05-29 23:03 -------
*** Bug 27535 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kminola at eng dot umd dot
                   |                            |edu


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (15 preceding siblings ...)
  2006-05-29 23:04 ` pinskia at gcc dot gnu dot org
@ 2006-05-31  9:36 ` reichelt at gcc dot gnu dot org
  2006-05-31 14:05 ` fxcoudert at gcc dot gnu dot org
  2006-05-31 17:31 ` hjl at lucon dot org
  18 siblings, 0 replies; 20+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-05-31  9:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from reichelt at gcc dot gnu dot org  2006-05-31 09:36 -------
Fixed.


-- 

reichelt at gcc dot gnu dot org changed:

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


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (16 preceding siblings ...)
  2006-05-31  9:36 ` reichelt at gcc dot gnu dot org
@ 2006-05-31 14:05 ` fxcoudert at gcc dot gnu dot org
  2006-05-31 17:31 ` hjl at lucon dot org
  18 siblings, 0 replies; 20+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2006-05-31 14:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from fxcoudert at gcc dot gnu dot org  2006-05-31 14:04 -------
Yes, this is fixed. Maybe it's worth enabling -fsee at -O3 on x86?


-- 


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


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

* [Bug rtl-optimization/27437] -O2 -fsee failures on x86
  2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
                   ` (17 preceding siblings ...)
  2006-05-31 14:05 ` fxcoudert at gcc dot gnu dot org
@ 2006-05-31 17:31 ` hjl at lucon dot org
  18 siblings, 0 replies; 20+ messages in thread
From: hjl at lucon dot org @ 2006-05-31 17:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from hjl at lucon dot org  2006-05-31 17:31 -------
Last time when I tried it on x86 and x86-64 with SPEC CPU 2000, it didn't
do anything useful. I will try it again with SPEC CPU 2000 and 2006.


-- 


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


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

end of thread, other threads:[~2006-05-31 17:31 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-04 19:11 [Bug rtl-optimization/27437] New: [4.2 Regression]: -O3 regression due to SEE hjl at lucon dot org
2006-05-04 19:22 ` [Bug rtl-optimization/27437] " pinskia at gcc dot gnu dot org
2006-05-04 23:01 ` pinskia at gcc dot gnu dot org
2006-05-05 12:39 ` reichelt at gcc dot gnu dot org
2006-05-05 12:42 ` reichelt at gcc dot gnu dot org
2006-05-05 13:02 ` hjl at lucon dot org
2006-05-05 15:04 ` pinskia at gcc dot gnu dot org
2006-05-05 15:46 ` hjl at lucon dot org
2006-05-05 15:49 ` hjl at lucon dot org
2006-05-05 16:49 ` [Bug rtl-optimization/27437] [4.2 Regression] " pinskia at gcc dot gnu dot org
2006-05-05 21:15 ` pinskia at gcc dot gnu dot org
2006-05-05 22:18 ` pinskia at gcc dot gnu dot org
2006-05-05 22:22 ` pinskia at gcc dot gnu dot org
2006-05-07  8:24 ` [Bug rtl-optimization/27437] -O2 -fsee failures on x86 pinskia at gcc dot gnu dot org
2006-05-29 22:31 ` pinskia at gcc dot gnu dot org
2006-05-29 22:32 ` pinskia at gcc dot gnu dot org
2006-05-29 23:04 ` pinskia at gcc dot gnu dot org
2006-05-31  9:36 ` reichelt at gcc dot gnu dot org
2006-05-31 14:05 ` fxcoudert at gcc dot gnu dot org
2006-05-31 17:31 ` hjl at lucon 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).