 Load large immediate into general register:
The pseudoinstruction mov imm,%rn
(where the immediate does
not fit within a signed 16bit field) will be expanded into:
 orh large_imm@h,%r0,%rn
or large_imm@l,%rn,%rn

 Load/store with relocatable address expression:
For example, the pseudoinstruction ld.b addr,%rn
will be expanded into:
 orh addr_exp@ha,%r0,%r31
ld.l addr_exp@l(%r31),%rn

The analogous expansions apply to ld.x, st.x, fld.x, pfld.x, fst.x
, and pst.x
as well.
 Signed large immediate with add/subtract:
If any of the arithmetic operations adds, addu, subs, subu
are used
with an immediate larger than 16bits (signed), then they will be expanded.
For instance, the pseudoinstruction adds large_imm,%rx,%rn
expands to:
 orh large_imm@h,%r0,%r31
or large_imm@l,%r31,%r31
adds %r31,%rx,%rn

 Unsigned large immediate with logical operations:
Logical operations (or, andnot, or, xor
) also result in expansions.
The pseudoinstruction or large_imm,%rx,%rn
results in:
 orh large_imm@h,%rx,%r31
or large_imm@l,%r31,%rn

Similarly for the others, except for and
which expands to:
 andnot (1  large_imm)@h,%rx,%r31
andnot (1  large_imm)@l,%r31,%rn
