Difference between revisions of "Power ISA/Machine State Register"
Jump to navigation
Jump to search
(add III-S info) |
(add III-E info) |
||
Line 16: | Line 16: | ||
|Sixty-Four-Bit Mode | |Sixty-Four-Bit Mode | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
!1:2 | !1:2 | ||
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 30: | Line 29: | ||
|Hypervisor State | |Hypervisor State | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
!4 | !4 | ||
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 44: | Line 42: | ||
|Split Little Endian | |Split Little Endian | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
− | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power version | + | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 3.0B defines this bit as something set in hardware to be zero, and warns against changing it.</ref> |
|- | |- | ||
!6:28 | !6:28 | ||
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 58: | Line 55: | ||
|Transaction State | |Transaction State | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 65: | Line 62: | ||
|Transactional Memory Available | |Transactional Memory Available | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
+ | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |- | ||
+ | !32 | ||
+ | |CM | ||
+ | |Computation Mode | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !33 | ||
+ | |colspan="2"|Reserved | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !34 | ||
+ | |colspan="2"|Implementation-dependant | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#99F;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !35 | ||
+ | |GS | ||
+ | |Guest State | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
− | ! | + | !36 |
− | | | + | |colspan="2"|Implementation-dependant |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
+ | |style="background:#99F;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !37 | ||
+ | |UCLE | ||
+ | |User Cache Locking Enable | ||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 79: | Line 108: | ||
|Vector Available | |Vector Available | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E defines this as ''SPV'' - ''SP/Embedded Floating-Point/Vector Available''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
!39 | !39 | ||
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 93: | Line 121: | ||
|VSX Available | |VSX Available | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | |||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |- | ||
+ | !41:45 | ||
+ | |colspan="2"|Reserved | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !46 | ||
+ | |CE | ||
+ | |Critical Enable | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
− | ! | + | !47 |
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 107: | Line 147: | ||
|External Interrupt Enable | |External Interrupt Enable | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E calls this ''External Enable''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 114: | Line 154: | ||
|Problem State | |Problem State | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 121: | Line 161: | ||
|Floating-Point Available | |Floating-Point Available | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 128: | Line 168: | ||
|Machine Check Interrupt Enable | |Machine Check Interrupt Enable | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E calls this ''Machine Check Enable''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 135: | Line 175: | ||
|Floating-Point Exception Mode 0 | |Floating-Point Exception Mode 0 | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 142: | Line 182: | ||
|Single-Step Trace Enable | |Single-Step Trace Enable | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#99F;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E defines this as Implementation-dependent</ref> |
− | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note" name="msr_te">Power ISA version 3.0B defines bits 53 and 54 together as ''TE'' - Trace Enable - and defines having both bits set as ''reserved''</ref> | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note" name="msr_te">Power ISA version 3.0B defines bits 53 and 54 together as ''TE'' - ''Trace Enable'' - and defines having both bits set as ''reserved''</ref> |
|- | |- | ||
!54 | !54 | ||
Line 149: | Line 189: | ||
|Branch Trace Enable | |Branch Trace Enable | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E defines this as ''DE'' - ''Debug Interrupt Enable''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note" name="msr_te"/> | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes<ref group="note" name="msr_te"/> | ||
|- | |- | ||
Line 156: | Line 196: | ||
|Floating-Point Exception Mode 1 | |Floating-Point Exception Mode 1 | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
− | !56:57 | + | !56 |
− | | | + | |colspan="2"|Reserved |
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
+ | |- | ||
+ | !57 | ||
+ | |colspan="2"|Reserved | ||
+ | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | |||
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 170: | Line 215: | ||
|Instruction Relocate | |Instruction Relocate | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E defines this as ''IS'' - ''Instruction Address Space''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 177: | Line 222: | ||
|Data Relocate | |Data Relocate | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#FF9;vertical-align:middle;text-align:center;"|Yes<ref group="note">Power ISA version 2.07 Book III-E defines this as ''DS'' - ''Data Address Space''</ref> |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
!60 | !60 | ||
| | | | ||
− | | | + | |Implementation-dependant |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
− | | | + | |style="background:#99F;vertical-align:middle;text-align:center;"|Yes |
|style="background:#F99;vertical-align:middle;text-align:center;"|No | |style="background:#F99;vertical-align:middle;text-align:center;"|No | ||
|- | |- | ||
Line 191: | Line 236: | ||
|Performance Monitor Mark | |Performance Monitor Mark | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 198: | Line 243: | ||
|Recoverable Interrupt | |Recoverable Interrupt | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|- | |- | ||
Line 205: | Line 250: | ||
|Little-Endian Mode | |Little-Endian Mode | ||
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
− | | | + | |style="background:#F99;vertical-align:middle;text-align:center;"|No |
|style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | |style="background:#9F9;vertical-align:middle;text-align:center;"|Yes | ||
|} | |} | ||
<references group="note"/> | <references group="note"/> |
Revision as of 13:14, 20 January 2018
Bit | Code | Name | Defined | ||
---|---|---|---|---|---|
2.07 | 3.0B | ||||
III-S | III-E | ||||
0 | SF | Sixty-Four-Bit Mode | Yes | No | Yes |
1:2 | Reserved | No | No | No | |
3 | HV | Hypervisor State | Yes | No | Yes |
4 | Reserved | No | No | No | |
5 | SLE | Split Little Endian | Yes | No | Yes[note 1] |
6:28 | Reserved | No | No | No | |
29:30 | TS | Transaction State | Yes | No | Yes |
31 | TM | Transactional Memory Available | Yes | No | Yes |
32 | CM | Computation Mode | No | Yes | No |
33 | Reserved | No | No | No | |
34 | Implementation-dependant | No | Yes | No | |
35 | GS | Guest State | No | Yes | No |
36 | Implementation-dependant | No | Yes | No | |
37 | UCLE | User Cache Locking Enable | No | Yes | No |
38 | VEC | Vector Available | Yes | Yes[note 2] | Yes |
39 | Reserved | No | No | No | |
40 | VSX | VSX Available | Yes | Yes | Yes |
41:45 | Reserved | No | No | No | |
46 | CE | Critical Enable | No | Yes | No |
47 | Reserved | No | No | No | |
48 | EE | External Interrupt Enable | Yes | Yes[note 3] | Yes |
49 | PR | Problem State | Yes | Yes | Yes |
50 | FP | Floating-Point Available | Yes | Yes | Yes |
51 | ME | Machine Check Interrupt Enable | Yes | Yes[note 4] | Yes |
52 | FE0 | Floating-Point Exception Mode 0 | Yes | Yes | Yes |
53 | SE | Single-Step Trace Enable | Yes | Yes[note 5] | Yes[note 6] |
54 | BE | Branch Trace Enable | Yes | Yes[note 7] | Yes[note 6] |
55 | FE1 | Floating-Point Exception Mode 1 | Yes | Yes | Yes |
56 | Reserved | No | No | No | |
57 | Reserved | No | No | No | |
58 | IR | Instruction Relocate | Yes | Yes[note 8] | Yes |
59 | DR | Data Relocate | Yes | Yes[note 9] | Yes |
60 | Implementation-dependant | No | Yes | No | |
61 | PMM | Performance Monitor Mark | Yes | Yes | Yes |
62 | RI | Recoverable Interrupt | Yes | No | Yes |
63 | LE | Little-Endian Mode | Yes | No | Yes |
- ↑ Power ISA version 3.0B defines this bit as something set in hardware to be zero, and warns against changing it.
- ↑ Power ISA version 2.07 Book III-E defines this as SPV - SP/Embedded Floating-Point/Vector Available
- ↑ Power ISA version 2.07 Book III-E calls this External Enable
- ↑ Power ISA version 2.07 Book III-E calls this Machine Check Enable
- ↑ Power ISA version 2.07 Book III-E defines this as Implementation-dependent
- ↑ 6.0 6.1 Power ISA version 3.0B defines bits 53 and 54 together as TE - Trace Enable - and defines having both bits set as reserved
- ↑ Power ISA version 2.07 Book III-E defines this as DE - Debug Interrupt Enable
- ↑ Power ISA version 2.07 Book III-E defines this as IS - Instruction Address Space
- ↑ Power ISA version 2.07 Book III-E defines this as DS - Data Address Space