Predefined symbols are MACRO-64 register symbols that are not
permanently reserved. You can delete the definition of any of
these predefined register symbols. You can also define your own
register symbols.
You can express the 32 general registers and the 32 floating-
point registers of the Alpha processor in a source program as
follows:
Register
Name Description
R0 General register 0.
R1 General register 1.
. .
. .
. .
R29 General register 29 or frame pointer. If you use R29 as a
or FP frame pointer, Digital recommends you use the name FP. If
you use R29 as a general register, Digital recommends you
use the name R29.
R30 General register 30 or stack pointer. If you use R30 as a
or stack pointer, the name SP is recommended; if you use R30
SP as a general register, the name R30 is recommended.
R31 General register 31.
F0 Floating-point register 0.
. .
. .
. .
F31 Floating-point register 31.
NOTE
When MACRO-64 operates in /NAMES=AS_IS mode, all of the
previous register symbols are defined in all uppercase and
all lowercase.
To define your own register symbols, use either the .DEFINE_
FREG or .DEFINE_IREG directive for floating-point or integer
registers, respectively. For more information about the .DEFINE_
FREG or .DEFINE_IREG directives, see .DEFINE_FREG and .DEFINE_
IREG, respectively.
You can delete a register symbol definition with the .UNDEFINE_
REG directive. For more information about the .UNDEFINE_REG
directive, see .UNDEFINE_REG.
While an identifier is defined as a register symbol, it can only
be used in those contexts that allow a register.