https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119911
--- Comment #1 from Robin Dapp <rdapp at gcc dot gnu.org> --- I guess that's an artifact of us deferring the sign/zero-extend split until after reload where e.g. gcse is already done? If we represented them as AND 0xfff... earlier we'd probably compromise on other optimizations. Still should be doable.
