On 08/02/2018 04:27 PM, Jeff Law wrote:
I think the cse_cc pass is really just working around one or more bugs
in CSE and/or a backend bug.  The RTL above clearly shows a common
subexpression that is not eliminated by CSE.

What CSE should be trying to do is changing the second and third
occurrences of (gt:CC (reg 77) (reg 78)) with (reg 33) which would
create nop-sets which would be subsequently deleted.  I suspect you do
not have an insn which matches that nop set of the CC register.  If you
fix that I suspect CSE will work better and eliminate the need for your
cse_cc pass.

Thanks for the tip about that! I hacked things up to do as you suggest and it appears to work. I'll post a new patch set once I've had time for more testing, probably Monday-ish.

-Sandra

Reply via email to