https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105991
--- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to Marek Polacek from comment #0) > It doesn't look like a wrong code problem, but it seems more optimal to use > rldimi (rotate left, mask insert) rather than rotate left by 0 bits, AND > with a mask, shift left, and add. Confirmed. The original code is much better (and yes, the current is correct as well).