ZXFoundation™ 26h2
Loading...
Searching...
No Matches
arch.s390x.cpu.psw Module Reference

Data Structures

struct  arch::s390x::cpu::psw::epsw_words
struct  arch::s390x::cpu::psw::zx_psw
 64-bit z/Architecture PSW (16 bytes, 8-byte aligned per PoP §4.2). More...

Functions

auto arch::s390x::cpu::psw::disabled_wait () noexcept -> void
auto arch::s390x::cpu::psw::enabled_wait () noexcept -> void
 Enter enabled-wait state — the z/Architecture idle primitive.
auto arch::s390x::cpu::psw::extract_psw () noexcept -> zx_psw
 Extract the current PSW mask via EPSW. addr is unavailable; set to 0.
auto arch::s390x::cpu::psw::load_psw (const zx_psw &psw) noexcept -> void
auto arch::s390x::cpu::psw::make_ap_restart_psw (u64 entry_phys) noexcept -> zx_psw
auto arch::s390x::cpu::psw::make_handler_psw (u64 entry_virt) noexcept -> zx_psw
auto arch::s390x::cpu::psw::write_psw_to_lowcore (u64 lc_offset, zx_psw psw) noexcept -> void

Variables

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).

Files

file  arch/s390x/cpu/psw.zcomponent/psw.cxxm
file  arch/s390x/cpu/psw.zcomponent/psw.cxx