|
|
u64 | addr {} |
| | Instruction address (bits 64–127).
|
|
u32 | hi |
|
u32 | lo |
|
u64 | mask {} |
| | PSW mask word (bits 0–63 per PoP Figure 4-1).
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_ARCH_BITS = PSW_BIT_EA | PSW_BIT_BA |
| | 64-bit mode bits that MUST be present in every valid z/Arch PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_ASC_ACCREG = 0x0000400000000000ULL |
| | Access register mode (ASC = 10).
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_ASC_HOME = 0x0000C00000000000ULL |
| | Home Space Mode (ASC = 11) — CR13 is the effective ASCE.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_ASC_PRIMARY = 0x0000000000000000ULL |
| | Primary Space Mode (ASC = 00) — no bits set.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_ASC_SECONDARY = 0x0000800000000000ULL |
| | Secondary Space Mode (ASC = 01).
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_BA = 0x0000000080000000ULL |
| | Basic addressing (BA) bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_DAT = 0x0400000000000000ULL |
| | DAT (Dynamic Address Translation) enable bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_EA = 0x0000000100000000ULL |
| | Extended addressing (EA) bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_EXT = 0x0100000000000000ULL |
| | External interrupt enable bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_IO = 0x0200000000000000ULL |
| | I/O interrupt enable bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_MCCK = 0x0004000000000000ULL |
| | Machine-check interrupt enable bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_PSTATE = 0x0001000000000000ULL |
| | Problem state (user mode) bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_BIT_WAIT = 0x0002000000000000ULL |
| | Wait state bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_DEFAULT_KEY = 0ULL |
| | Default PSW storage key (key 0 — master key, unrestricted).
|
|
constexpr u32 | arch::s390x::cpu::psw::PSW_KEY_SHIFT = 52 |
| | PSW key field shift — bits 8–11 of the PSW mask word.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_EXTERNAL = 0x01B0ULL |
| | External new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_IO = 0x01F0ULL |
| | I/O new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_MCCK = 0x01E0ULL |
| | Machine-check new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_PROGRAM = 0x01D0ULL |
| | Program-check new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_RESTART = 0x01A0ULL |
| | Restart new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_LC_SVC = 0x01C0ULL |
| | Supervisor-call new PSW.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_DISABLED_WAIT = PSW_DEFAULT_KEY | PSW_BIT_WAIT | PSW_ARCH_BITS |
| | Disabled-wait PSW mask: wait state, no interrupts, 64-bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_ENABLED_WAIT |
| | Enabled-wait PSW mask.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_KERNEL = PSW_DEFAULT_KEY | PSW_ARCH_BITS | PSW_ASC_PRIMARY |
| | Kernel execution mask: supervisor, DAT off, all interrupts disabled, 64-bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_KERNEL_DAT = PSW_DEFAULT_KEY | PSW_BIT_DAT | PSW_ARCH_BITS | PSW_ASC_HOME |
| | Kernel DAT-on mask: supervisor, DAT on, all interrupts disabled, 64-bit.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_KERNEL_ENABLED |
| | Kernel DAT-on mask with interrupts enabled (normal execution).
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_MASK_USER |
| | User-mode PSW mask for entering a domain in problem state.
|
|
constexpr u64 | arch::s390x::cpu::psw::PSW_STD_HALT_ADDR = 0x0000000000DEAD00ULL |
| | Standard halt address (appears in disabled-wait PSW during normal shutdown).
|