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

Uros Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Depends on|                            |52854

--- Comment #6 from Uros Bizjak <ubizjak at gmail dot com> 2012-04-05 10:16:32 
UTC ---
This is similar issue as PR 52854, but this time:

(insn 6 3 7 2 (set (reg/f:DI 64 [ addr ])
        (sign_extend:DI (subreg/u:SI (reg/v/f:DI 63 [ addr ]) 0))) pr52876.c:6
122 {*extendsidi2_rex64}
     (expr_list:REG_DEAD (reg/v/f:DI 63 [ addr ])
        (nil)))

(insn 7 6 8 2 (parallel [
            (set (reg:DI 61 [ li.4 ])
                (and:DI (reg/f:DI 64 [ addr ])
                    (const_int 4294967295 [0xffffffff])))
            (clobber (reg:CC 17 flags))
        ]) pr52876.c:10 377 {*anddi_1}
     (expr_list:REG_DEAD (reg/f:DI 64 [ addr ])
        (expr_list:REG_UNUSED (reg:CC 17 flags)
            (nil))))

combine converts this to:

Trying 6 -> 7:
Successfully matched this instruction:
(set (reg:DI 61 [ li.4 ])
    (reg/v/f:DI 63 [ addr ]))

(note 6 3 7 2 NOTE_INSN_DELETED)

(insn 7 6 8 2 (set (reg:DI 61 [ li.4 ])
        (reg/v/f:DI 63 [ addr ])) pr52876.c:10 62 {*movdi_internal_rex64}
     (expr_list:REG_DEAD (reg/v/f:DI 63 [ addr ])
        (nil)))

Reply via email to