https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97708
Segher Boessenkool <segher at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|INVALID |---
Status|RESOLVED |REOPENED
--- Comment #5 from Segher Boessenkool <segher at gcc dot gnu.org> ---
The only supported use for this feature is to specify registers
for input and output operands when calling Extended @code{asm}
(@pxref{Extended Asm}). This may be necessary if the constraints for a
particular machine don't provide sufficient control to select the desired
register. To force an operand into a register, create a local variable
and specify the register name after the variable's declaration. Then use
the local variable for the @code{asm} operand and specify any constraint
letter that matches the register:
Stop marking this as invalid. It is not.
"r" *is* valid. And even if it was not, the compiler should just error,
not silently do the wrong thing!