mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 06:13:07 +00:00
52 lines
1.4 KiB
Zig
52 lines
1.4 KiB
Zig
// See C headers in
|
|
// lib/libc/include/aarch64-macos.12-gnu/mach/arm/_structs.h
|
|
// lib/libc/include/aarch64-macos.13-none/arm/_mcontext.h
|
|
|
|
pub const mcontext_t = extern struct {
|
|
es: exception_state,
|
|
ss: thread_state,
|
|
ns: neon_state,
|
|
};
|
|
|
|
pub const exception_state = extern struct {
|
|
far: u64, // Virtual Fault Address
|
|
esr: u32, // Exception syndrome
|
|
exception: u32, // Number of arm exception taken
|
|
};
|
|
|
|
pub const thread_state = extern struct {
|
|
regs: [29]u64, // General purpose registers
|
|
fp: u64, // Frame pointer x29
|
|
lr: u64, // Link register x30
|
|
sp: u64, // Stack pointer x31
|
|
pc: u64, // Program counter
|
|
cpsr: u32, // Current program status register
|
|
__pad: u32,
|
|
};
|
|
|
|
pub const neon_state = extern struct {
|
|
q: [32]u128,
|
|
fpsr: u32,
|
|
fpcr: u32,
|
|
};
|
|
|
|
pub const EXC_TYPES_COUNT = 14;
|
|
pub const EXC_MASK_MACHINE = 0;
|
|
|
|
pub const ARM_THREAD_STATE = 1;
|
|
pub const ARM_UNIFIED_THREAD_STATE = ARM_THREAD_STATE;
|
|
pub const ARM_VFP_STATE = 2;
|
|
pub const ARM_EXCEPTION_STATE = 3;
|
|
pub const ARM_DEBUG_STATE = 4;
|
|
pub const THREAD_STATE_NONE = 5;
|
|
pub const ARM_THREAD_STATE64 = 6;
|
|
pub const ARM_EXCEPTION_STATE64 = 7;
|
|
pub const ARM_THREAD_STATE_LAST = 8;
|
|
pub const ARM_THREAD_STATE32 = 9;
|
|
pub const ARM_DEBUG_STATE32 = 14;
|
|
pub const ARM_DEBUG_STATE64 = 15;
|
|
pub const ARM_NEON_STATE = 16;
|
|
pub const ARM_NEON_STATE64 = 17;
|
|
pub const ARM_CPMU_STATE64 = 18;
|
|
pub const ARM_PAGEIN_STATE = 27;
|