ARM VERSION 1.2 Computer Hardware User Manual


 
ARM Instruction Reference
ARM DUI 0068B Copyright © 2000, 2001 ARM Limited. All rights reserved. 4-59
4.6.2 BX
Branch, and optionally exchange instruction set.
Syntax
BX{cond} Rm
where:
cond
is an optional condition code (see Conditional execution on page 4-4).
Rm
is an ARM register containing the address to branch to.
Bit 0 of
Rm
is not used as part of the address.
If bit 0 of
Rm
is set, the instruction sets the T flag in the CPSR, and the
code at the destination is interpreted as Thumb code.
If bit 0 of
Rm
is clear, bit 1 must not be set.
Usage
The
BX
instruction causes a branch to the address held in
Rm
, and changes instruction set
to Thumb if bit 0 of
Rm
is set.
Architectures
This instruction is available in all T variants of the ARM architecture, and ARM
architecture v5 and above.
Examples
BX r7
BXVS r0