2.6.9.1.3 Restrictions

The restrictions are:

  • do not use PC in the BLX instruction
  • for BX and BLX, bit[0] of Rm must be 1 for correct execution but a branch occurs to the target address created by changing bit[0] to 0
  • when any of these instructions is inside an IT block, it must be the last instruction of the IT block.
    Note: Bcond is the only conditional instruction that is not required to be inside an IT block. However, it has a longer branch range when it is inside an IT block.