https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110792
Roger Sayle <roger at nextmovesoftware dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |roger at nextmovesoftware dot com --- Comment #11 from Roger Sayle <roger at nextmovesoftware dot com> --- Mine. Alas the obvious fix of adding an early clobber to the rotate doubleword from memory alternative generates some truly terrible code (spills via memory to SSE registers!?), but I've come up with a better solution, forcing reload to read the operand from memory before the rotate, which appears to fix the problem without the adverse performance impact.