B1.75 Instruction Set Attribute Register 1

The ID_ISAR1 characteristics are:

Provides information about the instruction sets implemented by the processor in AArch32.
Usage constraints

This register is accessible as follows:











(SCR.NS = 1)


(SCR.NS = 0)


Must be interpreted with ID_ISAR0, ID_ISAR2, ID_ISAR3, ID_ISAR4 and ID_ISAR5. See:


There is one copy of this register that is used in both Secure and Non-secure states.

ID_ISAR1 is a 32-bit register.
Figure B1-30 ID_ISAR1 bit assignments
To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.

Jazelle, [31:28]

Indicates the implemented Jazelle state instructions:

0x1The BXJ instruction, and the J bit in the PSR.
Interwork, [27:24]

Indicates the implemented Interworking instructions:

  • The BX instruction, and the T bit in the PSR.
  • The BLX instruction. The PC loads have BX-like behavior.
  • Data-processing instructions in the A32 instruction set with the PC as the destination and the S bit clear, have BX-like behavior.
Immediate, [23:20]

Indicates the implemented data-processing instructions with long immediates:

  • The MOVT instruction.
  • The MOV instruction encodings with zero-extended 16-bit immediates.
  • The T32 ADD and SUB instruction encodings with zero-extended 12-bit immediates, and other ADD, ADR, and SUB encodings cross-referenced by the pseudocode for those encodings.
IfThen, [19:16]

Indicates the implemented If-Then instructions in the T32 instruction set:

0x1The IT instructions, and the IT bits in the PSRs.
Extend, [15:12]

Indicates the implemented Extend instructions:

  • The SXTB, SXTH, UXTB, and UXTH instructions.
  • The SXTB16, SXTAB, SXTAB16, SXTAH, UXTB16, UXTAB, UXTAB16, and UXTAH instructions.
Except_AR, [11:8]

Indicates the implemented A profile exception-handling instructions:

0x1The SRS and RFE instructions, and the A profile forms of the CPS instruction.
Except, [7:4]

Indicates the implemented exception-handling instructions in the A32 instruction set:

0x1The LDM (exception return), LDM (user registers), and STM (user registers) instruction versions.
Endian, [3:0]

Indicates the implemented Endian instructions:

0x1The SETEND instruction, and the E bit in the PSRs.

To access the ID_ISAR1:

MRC p15, 0, <Rt>, c0, c2, 1 ; Read ID_ISAR1 into Rt

Register access is encoded as follows:

Table B1-58 ID_ISAR1 access encoding

coproc opc1 CRn CRm opc2
1111 000 0000 0010 001
Non-ConfidentialPDF file icon PDF versionARM 100241_0001_00_en
Copyright © 2016, 2017 ARM Limited or its affiliates. All rights reserved.