This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: missing conditional propagation in cprop.c pass
"Amker.Cheng" <amker.cheng@gmail.com> writes:
> (insn 882 881 883 96 (set (reg:CC 24 cc)
> (compare:CC (reg:SI 684 [ default_num_contexts ])
> (const_int 0 [0]))) core_main.c:265 211 {*arm_cmpsi_insn}
> (nil))
>
>
> The insn49 should be propagated with conditional const from insn882
> and jump_insn883, optimized into "r291<-0" as following code, then let
> pre do redundancy elimination work.
Unless there's something arch specific related to arm, insn 882 is a
compare, which won't change r684. Why do you think 0 should
propagated to r291 if r684 is not zero?
Cheers,
--
PMatos