| use PT_FIRSTMACH; |
| |
| pub type c_long = i64; |
| pub type c_ulong = u64; |
| pub type c_char = i8; |
| pub type c___greg_t = u64; |
| pub type __cpu_simple_lock_nv_t = ::c_uchar; |
| |
| s! { |
| pub struct mcontext_t { |
| pub __gregs: [c___greg_t; 26], |
| pub _mc_tlsbase: c___greg_t, |
| pub __fpregs: [[::c_char;32]; 16], |
| } |
| |
| pub struct ucontext_t { |
| pub uc_flags: ::c_uint, |
| pub uc_link: *mut ::ucontext_t, |
| pub uc_sigmask: ::sigset_t, |
| pub uc_stack: ::stack_t, |
| pub uc_mcontext: ::mcontext_t, |
| } |
| } |
| |
| // should be pub(crate), but that requires Rust 1.18.0 |
| cfg_if! { |
| if #[cfg(libc_const_size_of)] { |
| #[doc(hidden)] |
| pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_long>() - 1; |
| } else { |
| #[doc(hidden)] |
| pub const _ALIGNBYTES: usize = 8 - 1; |
| } |
| } |
| |
| pub const PT_STEP: ::c_int = PT_FIRSTMACH + 0; |
| pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1; |
| pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2; |
| pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 3; |
| pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 4; |
| |
| pub const _REG_RDI: ::c_int = 0; |
| pub const _REG_RSI: ::c_int = 1; |
| pub const _REG_RDX: ::c_int = 2; |
| pub const _REG_RCX: ::c_int = 3; |
| pub const _REG_R8: ::c_int = 4; |
| pub const _REG_R9: ::c_int = 5; |
| pub const _REG_R10: ::c_int = 6; |
| pub const _REG_R11: ::c_int = 7; |
| pub const _REG_R12: ::c_int = 8; |
| pub const _REG_R13: ::c_int = 9; |
| pub const _REG_R14: ::c_int = 10; |
| pub const _REG_R15: ::c_int = 11; |
| pub const _REG_RBP: ::c_int = 12; |
| pub const _REG_RBX: ::c_int = 13; |
| pub const _REG_RAX: ::c_int = 14; |
| pub const _REG_GS: ::c_int = 15; |
| pub const _REG_FS: ::c_int = 16; |
| pub const _REG_ES: ::c_int = 17; |
| pub const _REG_DS: ::c_int = 18; |
| pub const _REG_TRAPNO: ::c_int = 19; |
| pub const _REG_ERR: ::c_int = 20; |
| pub const _REG_RIP: ::c_int = 21; |
| pub const _REG_CS: ::c_int = 22; |
| pub const _REG_RFLAGS: ::c_int = 23; |
| pub const _REG_RSP: ::c_int = 24; |
| pub const _REG_SS: ::c_int = 25; |