------- Comment #1 from rguenth at gcc dot gnu dot org  2010-04-04 19:07 -------
Confirmed.  We already expand in this funny way:

;; Generating RTL for gimple basic block 2

;; return D.2720_3;

(insn 6 5 7 t.c:8 (set (reg:SI 65)
        (subreg:SI (reg/v:DI 62 [ u ]) 0)) -1 (nil))

(insn 7 6 8 t.c:8 (parallel [
            (set (reg:DI 66)
                (ashiftrt:DI (reg/v:DI 62 [ u ])
                    (const_int 32 [0x20])))
            (clobber (reg:CC 17 flags))
        ]) -1 (nil))

(insn 8 7 9 t.c:8 (set (reg:SI 67)
        (subreg:SI (reg:DI 66) 0)) -1 (nil))

(insn 9 8 10 t.c:8 (set (reg:SF 63)
        (plus:SF (subreg:SF (reg:SI 65) 0)
            (subreg:SF (reg:SI 67) 0))) -1 (nil))

(insn 10 9 11 t.c:8 (set (reg:SF 61 [ <retval> ])
        (reg:SF 63)) -1 (nil))


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement
             Status|UNCONFIRMED                 |NEW
          Component|c                           |middle-end
     Ever Confirmed|0                           |1
           Keywords|                            |missed-optimization
   Last reconfirmed|0000-00-00 00:00:00         |2010-04-04 19:07:13
               date|                            |


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

Reply via email to