https://gcc.gnu.org/bugzilla/show_bug.cgi?id=18395
Segher Boessenkool <segher at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |segher at gcc dot gnu.org --- Comment #3 from Segher Boessenkool <segher at gcc dot gnu.org> --- 1) Isn't true. But it is true that usually a SET is only tried together with its first USE (trying all USEs would be quite expensive, probably even noticably quadratic, and would not normally help. But maybe trying just the first and second USE helps?) 2) This is also a strength: combine can find all kinds of pattern that you never would think of. But I think an automated peepholer like you describe could be useful as a separate pass, one you could run more often, for example right after every splitter pass (on the insns that were split).