B1.62 ID_ISAR1, Instruction Set Attribute Register 1

The ID_ISAR1 provides information about the instruction sets implemented by the core in AArch32.

Bit field descriptions

ID_ISAR1 is a 32-bit register, and is part of the Identification registers functional group.

This register is Read Only.

Figure B1-47 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 Extension 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. 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 and R 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.

ID_ISAR1 is architecturally mapped to AArch64 register ID_ISAR1_EL1. See B2.68 ID_ISAR1_EL1, AArch32 Instruction Set Attribute Register 1, EL1.

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

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

Bit fields and details not provided in this description are architecturally defined. See the Arm® Architecture Reference Manual Armv8, for Armv8-A architecture profile.

Non-ConfidentialPDF file icon PDF version100442_0200_00_en
Copyright © 2016–2018 Arm Limited or its affiliates. All rights reserved.