Type REG [src]

Members

Source

pub const REG = switch (native_os) { .linux => linux.REG, .emscripten => emscripten.REG, .freebsd => switch (builtin.cpu.arch) { .aarch64 => struct { pub const FP = 29; pub const SP = 31; pub const PC = 32; }, .arm => struct { pub const FP = 11; pub const SP = 13; pub const PC = 15; }, .x86_64 => struct { pub const RBP = 12; pub const RIP = 21; pub const RSP = 24; }, else => struct {}, }, .solaris, .illumos => struct { pub const R15 = 0; pub const R14 = 1; pub const R13 = 2; pub const R12 = 3; pub const R11 = 4; pub const R10 = 5; pub const R9 = 6; pub const R8 = 7; pub const RDI = 8; pub const RSI = 9; pub const RBP = 10; pub const RBX = 11; pub const RDX = 12; pub const RCX = 13; pub const RAX = 14; pub const RIP = 17; pub const RSP = 20; }, .netbsd => switch (builtin.cpu.arch) { .aarch64 => struct { pub const FP = 29; pub const SP = 31; pub const PC = 32; }, .arm => struct { pub const FP = 11; pub const SP = 13; pub const PC = 15; }, .x86_64 => struct { pub const RDI = 0; pub const RSI = 1; pub const RDX = 2; pub const RCX = 3; pub const R8 = 4; pub const R9 = 5; pub const R10 = 6; pub const R11 = 7; pub const R12 = 8; pub const R13 = 9; pub const R14 = 10; pub const R15 = 11; pub const RBP = 12; pub const RBX = 13; pub const RAX = 14; pub const GS = 15; pub const FS = 16; pub const ES = 17; pub const DS = 18; pub const TRAPNO = 19; pub const ERR = 20; pub const RIP = 21; pub const CS = 22; pub const RFLAGS = 23; pub const RSP = 24; pub const SS = 25; }, else => struct {}, }, else => struct {}, }