9.47.2.2 Register Names

General-purpose registers are represented by predefined symbols of the form ‘ r N ’, where N represents a number between 0 and 63 . However, the following registers have canonical names that must be used instead:

r54
sp
r55
lr
r56
sn
r57
idn0
r58
idn1
r59
udn0
r60
udn1
r61
udn2
r62
udn3
r63
zero

The assembler will emit a warning if a numeric name is used instead of the canonical name. The .no_require_canonical_reg_names assembler pseudo-op turns off this warning. .require_canonical_reg_names turns it back on.