6.17 Expansion of inline assembler instructions that use constants
A constant operand specified in an instruction is not limited to the values permitted by the instruction. Instead, the compiler might translate the instruction into a sequence of instructions with the same effect.
might be translated into:
Another example of expansion possibility is:
With the exception of coprocessor instructions, all ARM instructions with a constant
operand support instruction expansion. In addition, the
MUL instruction can
be expanded into a sequence of adds and shifts when the third operand is a constant.
The effect of updating the
CPSR by an expanded instruction is: