On Mon, Sep 12, 2022 at 11:47:47AM -0500, Segher Boessenkool wrote: > On Mon, Sep 12, 2022 at 12:40:31AM +0100, Roger Sayle wrote: > > * gcc/combine.cc (expand_compound_operation): Don't expand/transform > > ZERO_EXTEND or SIGN_EXTEND on targets where rtx_cost claims they are > > cheap. If gen_lowpart returns a SUBREG of something other than a > > REG or a MEM, i.e. invalid RTL, return the original expression. > > This needs testing and analysis on all platforms.
Btw. This then needs to be of only the combine change. Importantly not the simplify changes, which should be a separate patch anyway: they should be an improvment always (otherwise they are not okay anyway!) The i386 patches should be separate and probably can be committed first, too? I haven't looked at those target things. Other target will probably want changes as well? Segher