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.