public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/17387] Redundant instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
@ 2006-01-15 20:30 ` pinskia at gcc dot gnu dot org
  2006-02-27 23:55 ` hjl at lucon dot org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-01-15 20:30 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|SUSPENDED                   |NEW
   Last reconfirmed|2005-05-04 18:12:43         |2006-01-15 20:30:45
               date|                            |


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


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

* [Bug rtl-optimization/17387] Redundant instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
  2006-01-15 20:30 ` [Bug rtl-optimization/17387] Redundant instructions in loop optimization pinskia at gcc dot gnu dot org
@ 2006-02-27 23:55 ` hjl at lucon dot org
  2007-04-20 20:58 ` steven at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: hjl at lucon dot org @ 2006-02-27 23:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from hjl at lucon dot org  2006-02-27 23:40 -------
Even with the new patch

http://gcc.gnu.org/ml/gcc-patches/2006-02/msg01994.html

I still got the same result. The new see pass won't touch

(insn:HI 13 9 14 2 (set (reg/v:SI 73 [ t ])
        (mem/s:SI (symbol_ref:DI ("state") [flags 0x40] <var_decl 0x2a98541420
state>) [3 state+0 S4 A32])) 40 {*movsi_1} (nil)
    (nil))

(insn:HI 14 13 16 2 (parallel [
            (set (reg/v:SI 73 [ t ])
                (xor:SI (mem/s:SI (symbol_ref:DI ("S") [flags 0x40] <var_decl
0x2a985412c0 S>) [3 S+0 S4 A32])
                    (reg/v:SI 73 [ t ])))
            (clobber (reg:CC 17 flags))
        ]) 340 {*xorsi_1} (insn_list:REG_DEP_TRUE 13 (nil))
    (expr_list:REG_UNUSED (reg:CC 17 flags)
        (expr_list:REG_EQUAL (xor:SI (mem/s:SI (symbol_ref:DI ("S") [flags
0x40] <var_decl 0x2a985412c0 S>) [3 S+0 S4 A32])
                (mem/s:SI (symbol_ref:DI ("state") [flags 0x40] <var_decl
0x2a98541420 state>) [3 state+0 S4 A32]))
            (nil))))

(insn:HI 16 14 18 2 (set (mem/s:SI (symbol_ref:DI ("state") [flags 0x40]
<var_decl 0x2a98541420 state>) [3 state+0 S4 A32])
        (reg/v:SI 73 [ t ])) 40 {*movsi_1} (insn_list:REG_DEP_TRUE 14 (nil))
    (nil))

(insn:HI 18 16 21 2 (set (reg:DI 79 [ t ])
        (zero_extend:DI (reg/v:SI 73 [ t ]))) 111 {zero_extendsidi2_rex64}
(nil)
    (expr_list:REG_DEAD (reg/v:SI 73 [ t ])
        (nil)))


-- 

hjl at lucon dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|4.0.0                       |4.2.0


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


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

* [Bug rtl-optimization/17387] Redundant instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
  2006-01-15 20:30 ` [Bug rtl-optimization/17387] Redundant instructions in loop optimization pinskia at gcc dot gnu dot org
  2006-02-27 23:55 ` hjl at lucon dot org
@ 2007-04-20 20:58 ` steven at gcc dot gnu dot org
  2007-04-20 21:10 ` steven at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2007-04-20 20:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from steven at gcc dot gnu dot org  2007-04-20 21:58 -------
It is my intention to fix see.c to work on x86* hardware, so I'm taking this
bug.


-- 

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|2006-01-15 20:30:45         |2007-04-20 21:58:36
               date|                            |


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


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

* [Bug rtl-optimization/17387] Redundant instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2007-04-20 20:58 ` steven at gcc dot gnu dot org
@ 2007-04-20 21:10 ` steven at gcc dot gnu dot org
  2007-05-25 20:32 ` steven at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2007-04-20 21:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from steven at gcc dot gnu dot org  2007-04-20 22:10 -------
Collection of important related links:
http://gcc.gnu.org/ml/gcc-patches/2006-04/msg00766.html
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27437#c5


-- 

steven at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |27437


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


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

* [Bug rtl-optimization/17387] Redundant instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2007-04-20 21:10 ` steven at gcc dot gnu dot org
@ 2007-05-25 20:32 ` steven at gcc dot gnu dot org
  2009-02-18 13:02 ` [Bug rtl-optimization/17387] Redundant zero extension " bonzini at gnu dot org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2007-05-25 20:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from steven at gcc dot gnu dot org  2007-05-25 20:32 -------
With the current implementation of SEE it is almost impossible to make it work
on x86.  You have to take into account the liveness of the flags register, and
there currently is no way to include that in the dataflow equations.  Maybe
someone else knows how to do this...


-- 

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=17387


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

* [Bug rtl-optimization/17387] Redundant zero extension instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2007-05-25 20:32 ` steven at gcc dot gnu dot org
@ 2009-02-18 13:02 ` bonzini at gnu dot org
  2009-02-18 21:24 ` hjl dot tools at gmail dot com
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: bonzini at gnu dot org @ 2009-02-18 13:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #23 from bonzini at gnu dot org  2009-02-18 13:02 -------
> Gcc doesn't know/remember
> 
> movl    S(,%rax,4), %eax
> 
> will zero extend to 64bit. I don't know you can touch only the lower
> 32bit bits.

This could be fixed by LOAD_EXTEND_OP, right?


-- 


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


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

* [Bug rtl-optimization/17387] Redundant zero extension instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2009-02-18 13:02 ` [Bug rtl-optimization/17387] Redundant zero extension " bonzini at gnu dot org
@ 2009-02-18 21:24 ` hjl dot tools at gmail dot com
  2009-02-18 21:32 ` hjl dot tools at gmail dot com
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 10+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-02-18 21:24 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #24 from hjl dot tools at gmail dot com  2009-02-18 21:24 -------
I tried:

--- config/i386/i386.h.zero     2009-02-18 08:42:40.000000000 -0800
+++ config/i386/i386.h  2009-02-18 13:16:26.000000000 -0800
@@ -1940,6 +1940,11 @@ do {                                                    
\
    is done just by pretending it is already truncated.  */
 #define TRULY_NOOP_TRUNCATION(OUTPREC, INPREC) 1

+/* When in 64-bit mode, move insns will zero extend SImode.  All other
+   references are unknown.  */
+#define LOAD_EXTEND_OP(MODE) \
+  (TARGET_64BIT && (MODE) == SImode ? ZERO_EXTEND : UNKNOWN)
+
 /* A macro to update M and UNSIGNEDP when an object whose type is
    TYPE and which has the specified mode and signedness is to be
    stored in a register.  This macro is only called when TYPE is a

It makes no differences.


-- 


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


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

* [Bug rtl-optimization/17387] Redundant zero extension instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2009-02-18 21:24 ` hjl dot tools at gmail dot com
@ 2009-02-18 21:32 ` hjl dot tools at gmail dot com
  2009-09-17 13:48 ` hjl dot tools at gmail dot com
  2010-05-22 20:48 ` hjl dot tools at gmail dot com
  9 siblings, 0 replies; 10+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-02-18 21:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #25 from hjl dot tools at gmail dot com  2009-02-18 21:31 -------
All 32bit load insns are zero extended to 64bit, not just move.


-- 


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


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

* [Bug rtl-optimization/17387] Redundant zero extension instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (7 preceding siblings ...)
  2009-02-18 21:32 ` hjl dot tools at gmail dot com
@ 2009-09-17 13:48 ` hjl dot tools at gmail dot com
  2010-05-22 20:48 ` hjl dot tools at gmail dot com
  9 siblings, 0 replies; 10+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-09-17 13:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #26 from hjl dot tools at gmail dot com  2009-09-17 13:47 -------
*** Bug 34653 has been marked as a duplicate of this bug. ***


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dean at arctic dot org


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


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

* [Bug rtl-optimization/17387] Redundant zero extension instructions in loop optimization
       [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
                   ` (8 preceding siblings ...)
  2009-09-17 13:48 ` hjl dot tools at gmail dot com
@ 2010-05-22 20:48 ` hjl dot tools at gmail dot com
  9 siblings, 0 replies; 10+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-05-22 20:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #27 from hjl dot tools at gmail dot com  2010-05-22 20:48 -------
Fixed by revision 159342:

http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00394.html


-- 

hjl dot tools at gmail dot com changed:

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


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


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

end of thread, other threads:[~2010-05-22 20:48 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-17387-682@http.gcc.gnu.org/bugzilla/>
2006-01-15 20:30 ` [Bug rtl-optimization/17387] Redundant instructions in loop optimization pinskia at gcc dot gnu dot org
2006-02-27 23:55 ` hjl at lucon dot org
2007-04-20 20:58 ` steven at gcc dot gnu dot org
2007-04-20 21:10 ` steven at gcc dot gnu dot org
2007-05-25 20:32 ` steven at gcc dot gnu dot org
2009-02-18 13:02 ` [Bug rtl-optimization/17387] Redundant zero extension " bonzini at gnu dot org
2009-02-18 21:24 ` hjl dot tools at gmail dot com
2009-02-18 21:32 ` hjl dot tools at gmail dot com
2009-09-17 13:48 ` hjl dot tools at gmail dot com
2010-05-22 20:48 ` hjl dot tools at gmail dot com

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