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

--- Comment #1 from Kewen Lin <linkw at gcc dot gnu.org> ---
Thanks for filing this!

For the given example, previously split1 splits ordered test into unordered
test + xor, late-combine pass recombines them into ordered test then split2
fails to create a pseduo after RA. There seems two alternatives, adding
can_create_pseudo_p() to define_insn condition to stop late-combine after RA to
re-combine it, or appending a match_scratch to get temp register for rtx tmp
after RA. IMHO we don't expect to see ordered test after RA any more, so the
former is preferred? but people can argue that the latter is more flexible.

Segher originated these define_insn_and_split, looking forward to his opinion.

Need more checkings for the other failures.

Reply via email to