https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100711
--- Comment #5 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to Hongtao.liu from comment #4) > > Even w/ canonical RTL, i think a combine splitter is also needed here, the > > canonical RTL only helps combine/forwprop to match more possibility but > > won't split patterns by itselies. > > I was wrong, i thought combine only support n->1 combining, but actually > pass_combine also support 3->2 combining which means a define_split is not > needed here. <anything>->1 and <anything>->2, yes. But note that combine can often split RTL without having an explicit define_split; and also note the opposite, combine does not always pick the best spot to split, "manual" help (a define_split) can be needed for good results.