https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97603
--- Comment #3 from Gabriel Ravier <gabravier at gmail dot com> --- Well, I don't actually know enough to be able to determine which would be optimal. Transformation to the example from the third comment would be suboptimal on some targets (say, I don't think AVR would like this for 64-bit numbers), while doing this as an x86 specific transformation would be missing on an optimization opportunity on plenty of other targets.