| |||
| Home > ARM and Thumb Instructions > Pseudo-instructions > UND pseudo-instruction | |||
Generate an architecturally undefined instruction. An attempt to execute an undefined instruction causes the Undefined instruction exception. Architecturally undefined instructions are expected to remain undefined.
UND{cond}{.W} {#expr}
where:
condis an optional condition code.
.Wis an optional instruction width specifier.
exprevaluates to a numeric value. Table 13 shows the range
and encoding of in the
instruction, where Y shows the locations of the bits that encode
for expr and V
is the 4 bits that encode for the condition code.expr
If is omitted,
the value 0 is used.expr
Table 13. Range and encoding of expr
Instruction | Encoding | Number of bits for | Range |
|---|---|---|---|
ARM | 0xV7FYYYFY | 16 | 0-65535 |
32-bit Thumb | 0xF7FYAYFY | 12 | 0-4095 |
16-bit Thumb | 0xDEYY | 8 | 0-255 |
You can use the .W width specifier to force UND to
generate a 32-bit instruction in Thumb code on ARMv6T2 and above
processors. UND.W always generates a 32-bit instruction,
even if is in
the range 0-255.expr