hare

[hare] The Hare programming language
git clone https://git.torresjrjr.com/hare.git
Log | Files | Refs | README | LICENSE

+x86_64.ha (1122B)


      1 // SPDX-License-Identifier: MPL-2.0
      2 // (c) Hare authors <https://harelang.org>
      3 
      4 export type siginfo = struct {
      5 	si_signo: int,
      6 	si_errno: int,
      7 	si_code: int,
      8 	si_pid: pid_t,
      9 	si_uid: uid_t,
     10 	si_status: int,
     11 	si_addr: *opaque,
     12 	si_value: sigval,
     13 	_reason: union {
     14 		_fault: struct {
     15 			_trapno: int,
     16 		},
     17 		_timer: struct {
     18 			_timerid: int,
     19 			_overrun: int,
     20 		},
     21 		_mesgq: struct {
     22 			_mqd: int,
     23 		},
     24 		_poll: struct {
     25 			_band: i64,
     26 		},
     27 		__spare__: struct {
     28 			__spare1__: i64,
     29 			__spare2__: [7]int,
     30 		},
     31 	},
     32 };
     33 
     34 export type ucontext = struct {
     35 	uc_sigmask: sigset,
     36 	uc_mcontext: mcontext,
     37 	uc_link: *ucontext,
     38 	uc_stack: stack_t,
     39 	uc_flags: int,
     40 	__spare__: [4]int,
     41 };
     42 
     43 export type mcontext = struct {
     44 	mc_onstack: u64,
     45 	mc_rdi: u64,
     46 	mc_rsi: u64,
     47 	mc_rdx: u64,
     48 	mc_rcx: u64,
     49 	mc_r8: u64,
     50 	mc_r9: u64,
     51 	mc_rax: u64,
     52 	mc_rbx: u64,
     53 	mc_rbp: u64,
     54 	mc_r10: u64,
     55 	mc_r11: u64,
     56 	mc_r12: u64,
     57 	mc_r13: u64,
     58 	mc_r14: u64,
     59 	mc_r15: u64,
     60 	mc_trapno: u32,
     61 	mc_fs: u16,
     62 	mc_gs: u16,
     63 	mc_addr: u64,
     64 	mc_flags: u32,
     65 	mc_es: u16,
     66 	mc_ds: u16,
     67 	mc_err: u64,
     68 	mc_rip: u64,
     69 	mc_cs: u64,
     70 	mc_rflags: u64,
     71 	mc_rsp: u64,
     72 	mc_ss: u64,
     73 };