- is an optional condition code.
- is an optional instruction width specifier to force the use
of a 32-bit
Binstruction in T32.
- is a PC-relative expression.
B instruction causes a branch to
Instruction availability and branch ranges
The following table shows the branch ranges that are available in A32 and T32 code. Instructions that are not shown in this table are not available.
Extending branch ranges
B instructions have
restricted ranges from the address of the current instruction. However,
you can use these instructions even if
out of range. Often you do not know where the linker places
When necessary, the linker adds code to enable longer branches. The
added code is called a veneer.
You can use the
.W width specifier
B to generate a 32-bit instruction in T32
B.W always generates a 32-bit
instruction, even if the target could be reached using a 16-bit instruction.
For forward references,
.W always generates a 16-bit instruction in
T32 code, even if that results in failure for a target that could be reached using a
32-bit T32 instruction.
B instruction does not change
See the earlier table for details of availability of the