aarch64 PSTATE and SPSR
(only for) when exception taken from AArch64 state:
| SPSR_ELx | PSTATE | NOTE |
|---|---|---|
| [63:32] | - | RESERVED 0 |
| 31 | N | |
| 30 | Z | |
| 29 | C | |
| 28 | V | |
| [27:26] | - | RESERVED 0 |
| 25 | TCO | FEAT_MTE |
| 24 | DIT | FEAT_DIT |
| 23 | UAO | FEAT_UAO |
| 22 | PAN | FEAT_PAN |
| 21 | SS | |
| 20 | IL | |
| [19:13] | N/A | RESERVED 0 |
| 12 | SSBS | |
| [11:10] | BTYPE [1:0] | FEAT_BTI |
| 9 | D | |
| 8 | A | |
| 7 | I | |
| 6 | F | |
| 5 | - | RESERVED 0 |
| 4 | M [4] | |
| [3:0] | M [3:0] |
general PSTATE bits NOTE: PSTATE is not a register. Also not all fields are preserved in the SPSR_ELx when an excaption is taken.
| NAME | DESC |
|---|---|
| NZCV | ALU Condition {Neg, Zero, Carry, oVerflow} |
| DAIF | mask bits {Debug, sError, IRQ, FIQ} |
| SS | Software Step |
| IL | illegal execution state |
| EL(2) | exception level |
| nRW | execution state (0=64, 1=32) |
| SP | stack pointer selector (0=SP_EL0, 1=SP_ELn) |
feature PSTATE bits (TODO)