https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100908
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andreas Krebbel from comment #1) > https://gcc.gnu.org/pipermail/gcc/2021-June/236269.html Yes this will help solve the limitations which are already mentioned in the manual: Warning: In the above example, be aware that a register (for example r0) can be call-clobbered by subsequent code, including function calls and library calls for arithmetic operators on other variables (for example the initialization of p2). In this case, use temporary variables for expressions between the register assignments: