https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91384

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at redhat dot com

--- Comment #6 from Jeffrey A. Law <law at redhat dot com> ---
Couldn't cmpelim realize insn6 sets the condition codes in a useful way in this
RTL:

(insn 29 3 6 2 (set (reg/v:SI 40 r12 [orig:82 <retval> ] [82])
        (reg/v:SI 5 di [orig:83 a ] [83])) "j.c":9:9 67 {*movsi_internal}
     (nil))
(insn 6 29 7 2 (parallel [
            (set (reg/v:SI 40 r12 [orig:82 <retval> ] [82])
                (neg:SI (reg/v:SI 40 r12 [orig:82 <retval> ] [82])))
            (clobber (reg:CC 17 flags))
        ]) "j.c":9:9 525 {*negsi2_1}
     (nil))
(insn 7 6 8 2 (set (reg:CCZ 17 flags)
        (compare:CCZ (reg/v:SI 5 di [orig:83 a ] [83])
            (const_int 0 [0]))) "j.c":9:6 7 {*cmpsi_ccno_1}
     (nil))
(jump_insn 8 7 9 2 (set (pc)
        (if_then_else (eq (reg:CCZ 17 flags)
                (const_int 0 [0]))
            (label_ref 13)
            (pc))) "j.c":9:6 736 {*jcc}

If we're just interested in CC_Z, then we could use the output of insn 7 rather
than needing a distinct test insn.

Reply via email to