https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80083
--- Comment #3 from acsawdey at gcc dot gnu.org --- After discussion with Meissner and others, this appears to be the fix for movsi_internal1 that is needed: Index: gcc/config/rs6000/rs6000.md =================================================================== --- gcc/config/rs6000/rs6000.md (revision 246136) +++ gcc/config/rs6000/rs6000.md (working copy) @@ -6727,7 +6727,7 @@ [(set (match_operand:SI 0 "rs6000_nonimmediate_operand" "=r, r, r, ?*wI, ?*wH, m, ?Z, ?Z, r, r, - r, ?*wIwH, ?*wJwK, ?*wK, ?*wJwK, + r, ?*wIwH, ?*wJwK, ?*wJwK, ?*wu, ?*wJwK, ?*wH, ?*wK, ?*wIwH, ?r, r, *c*l, *h, *h")