as
will silently choose an instruction that fits
the operand size for [register+constant] operands. For
example, the offset 127
in move.d [r3+127],r4
fits
in an instruction using a signed-byte offset. Similarly,
move.d [r2+32767],r1
will generate an instruction using a
16-bit offset. For symbolic expressions and constants that do
not fit in 16 bits including the sign bit, a 32-bit offset is
generated.
For branches, as
will expand from a 16-bit branch
instruction into a sequence of instructions that can reach a
full 32-bit address. Since this does not correspond to a single
instruction, such expansions can optionally be warned about.
See CRIS-Opts.
If the operand is found to fit the range, a lapc
mnemonic
will translate to a lapcq
instruction. Use lapc.d
to force the 32-bit lapc
instruction.
Similarly, the addo
mnemonic will translate to the
shortest fitting instruction of addoq
, addo.w
and
addo.d
, when used with a operand that is a constant known
at assembly time.