Table 5–1 shows the table notation used in this chapter to describe the instruction set of the assembler. The following notations are commonly suffixed to assembler mnemonics (uppercase letters refer to SPARC architecture instruction names.
Table 5–1
Notations |
Describes |
Comment |
---|---|---|
address |
regrs1 + regrs2 regrs1 + const13 regrs1 – const13 const13 + regrs1 const13 |
Address formed from register contents, immediate constant, or both. |
asi |
|
Alternate address space identifier; an unsigned 8–bit value. It can be the result of the evaluation of a symbol expression. |
const13 |
|
A signed constant which fits in 13 bits. It can be the result of the evaluation of a symbol expression. |
const22 |
|
A constant which fits in 22 bits. It can be the result of the evaluation of a symbol expression. |
creg |
%c0 ... %c31 |
Coprocessor registers. |
freg |
%f0 ... %f31 |
Floating-point registers. |
imm7 |
|
A signed or unsigned constant that can be represented in 7 bits (it is in the range -64 ... 127). It can be the result of the evaluation of a symbol expression. |
reg |
%r0 ... %r31 |
General purpose registers. |
|
%g0 ... %g7 |
Same as %r0 ... %r7 (Globals) |
|
%o0 ... %o7 |
Same as %r8 ... %r15 (Outs) |
|
%l0 ... %l7 |
Same as %r16 ... %r23 (Locals) |
|
%i0 ... %i7 |
Same as %r24 ... %r31 (Ins) |
regrd |
|
Destination register. |
regrs1, regrs2 |
|
Source register 1, source register 2. |
reg_or_imm |
regrs2, const13 |
Value from either a single register, or an immediate constant. |
regaddr |
regrs1 regrs1 + regrs2 |
Address formed with register contents only. |
Software_trap_number |
regrs1 + regrs2 regrs1 + imm7 regrs1 - imm7 uimm7 imm7 + regrs1 |
A value formed from register contents, immediate constant, or both. The resulting value must be in the range 0.....127, inclusive. |
uimm7 |
|
An unsigned constant that can be represented in 7 bits (it is in the range 0 ... 127). It can be the result of the evaluation of a symbol expression. |