The ID_PFR0 characteristics are:
- Purpose
Gives top-level information about the instruction sets supported by the processor in AArch32.
- Usage constraints
This register is accessible as follows:
EL0
(NS)
EL0
(S)
EL1
(NS)
EL1
(S)
EL2 EL3
(SCR.NS = 1)
EL3
(SCR.NS = 0)
- - RO RO RO RO RO ID_PFR0 must be interpreted with ID_PFR1.
- Configurations
ID_PFR0 is architecturally mapped to AArch64 register ID_PFR0_EL1. See AArch32 Processor Feature Register 0.
There is one copy of this register that is used in both Secure and Non-secure states.
- Attributes
ID_PFR0 is a 32-bit register.
Figure 4.79 shows the ID_PFR0 bit assignments.
Table 4.164 shows the ID_PFR0 bit assignments.
Bits | Name | Function |
---|---|---|
[31:16] | - | Reserved, res0. |
[15:12] | State3 | Indicates support for Thumb Execution Environment (T32EE) instruction set. This value is:
|
[11:8] | State2 | Indicates support for Jazelle. This value is:
|
[7:4] | State1 | Indicates support for T32 instruction set. This value is:
|
[3:0] | State0 | Indicates support for A32 instruction set. This value is:
|
To access the ID_PFR0:
MRC p15,0,<Rt>,c0,c1,0 ; Read ID_PFR0 into Rt
Register access is encoded as follows: