2.14.4. The J bit

The J bit in the CPSR indicates when the processor is in ThumbEE state.

When T=1:

J = 0

The processor is in Thumb state.

J = 1

The processor is in ThumbEE state.


  • You cannot set the J bit to 1 when the T bit is 0. The J bit is written as 0 when the T bit is written as 0.

  • You cannot use MSR to change the J bit in the CPSR.

  • The placement of the J bit avoids the status or extension bytes in code running on ARMv5TE or earlier processors. This ensures that OS code written using the deprecated CPSR, SPSR, CPSR_all, or SPSR_all syntax for the destination of an MSR instruction continues to work.

Copyright © 2006-2009 ARM Limited. All rights reserved.ARM DDI 0344I