------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-04 
08:27 -------
Confirmed but note this is a register allocator problem really.
in lreg:
(insn:HI 12 8 16 0 (parallel [
            (set (reg/v:SF 59 [ a ])
                (if_then_else:SF (lt (reg/v:SF 59 [ a ])
                        (reg/v:SF 60 [ b ]))
                    (reg/v:SF 59 [ a ])
                    (reg/v:SF 60 [ b ])))
            (clobber (reg:CC 17 flags))
        ]) 654 {*minsf_nonieee} (insn_list:REG_DEP_TRUE 6 
(insn_list:REG_DEP_TRUE 7 (nil)))
    (expr_list:REG_UNUSED (reg:CC 17 flags)
        (expr_list:REG_DEAD (reg/v:SF 60 [ b ])
            (expr_list:REG_UNUSED (reg:CC 17 flags)
                (nil)))))

After global/postreload:
(insn:HI 12 32 16 0 (parallel [
            (set (reg/v:SF 8 st [orig:59 a ] [59])
                (if_then_else:SF (lt (reg/v:SF 8 st [orig:59 a ] [59])
                        (reg:SF 9 st(1)))
                    (reg/v:SF 8 st [orig:59 a ] [59])
                    (reg:SF 9 st(1))))
            (clobber (reg:CC 17 flags))
        ]) 654 {*minsf_nonieee} (insn_list:REG_DEP_TRUE 6 
(insn_list:REG_DEP_TRUE 7 (nil)))
    (nil))

Note we chose the fp "registers".

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |missed-optimization
   Last reconfirmed|0000-00-00 00:00:00         |2005-01-04 08:27:31
               date|                            |


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

Reply via email to