Home | History | Annotate | Download | only in runtime
      1 // created by cgo -cdefs and then converted to Go
      2 // cgo -cdefs defs_darwin.go
      3 
      4 package runtime
      5 
      6 import "unsafe"
      7 
      8 const (
      9 	_EINTR  = 0x4
     10 	_EFAULT = 0xe
     11 
     12 	_PROT_NONE  = 0x0
     13 	_PROT_READ  = 0x1
     14 	_PROT_WRITE = 0x2
     15 	_PROT_EXEC  = 0x4
     16 
     17 	_MAP_ANON    = 0x1000
     18 	_MAP_PRIVATE = 0x2
     19 	_MAP_FIXED   = 0x10
     20 
     21 	_MADV_DONTNEED = 0x4
     22 	_MADV_FREE     = 0x5
     23 
     24 	_MACH_MSG_TYPE_MOVE_RECEIVE   = 0x10
     25 	_MACH_MSG_TYPE_MOVE_SEND      = 0x11
     26 	_MACH_MSG_TYPE_MOVE_SEND_ONCE = 0x12
     27 	_MACH_MSG_TYPE_COPY_SEND      = 0x13
     28 	_MACH_MSG_TYPE_MAKE_SEND      = 0x14
     29 	_MACH_MSG_TYPE_MAKE_SEND_ONCE = 0x15
     30 	_MACH_MSG_TYPE_COPY_RECEIVE   = 0x16
     31 
     32 	_MACH_MSG_PORT_DESCRIPTOR         = 0x0
     33 	_MACH_MSG_OOL_DESCRIPTOR          = 0x1
     34 	_MACH_MSG_OOL_PORTS_DESCRIPTOR    = 0x2
     35 	_MACH_MSG_OOL_VOLATILE_DESCRIPTOR = 0x3
     36 
     37 	_MACH_MSGH_BITS_COMPLEX = 0x80000000
     38 
     39 	_MACH_SEND_MSG  = 0x1
     40 	_MACH_RCV_MSG   = 0x2
     41 	_MACH_RCV_LARGE = 0x4
     42 
     43 	_MACH_SEND_TIMEOUT   = 0x10
     44 	_MACH_SEND_INTERRUPT = 0x40
     45 	_MACH_SEND_ALWAYS    = 0x10000
     46 	_MACH_SEND_TRAILER   = 0x20000
     47 	_MACH_RCV_TIMEOUT    = 0x100
     48 	_MACH_RCV_NOTIFY     = 0x200
     49 	_MACH_RCV_INTERRUPT  = 0x400
     50 	_MACH_RCV_OVERWRITE  = 0x1000
     51 
     52 	_NDR_PROTOCOL_2_0      = 0x0
     53 	_NDR_INT_BIG_ENDIAN    = 0x0
     54 	_NDR_INT_LITTLE_ENDIAN = 0x1
     55 	_NDR_FLOAT_IEEE        = 0x0
     56 	_NDR_CHAR_ASCII        = 0x0
     57 
     58 	_SA_SIGINFO   = 0x40
     59 	_SA_RESTART   = 0x2
     60 	_SA_ONSTACK   = 0x1
     61 	_SA_USERTRAMP = 0x100
     62 	_SA_64REGSET  = 0x200
     63 
     64 	_SIGHUP    = 0x1
     65 	_SIGINT    = 0x2
     66 	_SIGQUIT   = 0x3
     67 	_SIGILL    = 0x4
     68 	_SIGTRAP   = 0x5
     69 	_SIGABRT   = 0x6
     70 	_SIGEMT    = 0x7
     71 	_SIGFPE    = 0x8
     72 	_SIGKILL   = 0x9
     73 	_SIGBUS    = 0xa
     74 	_SIGSEGV   = 0xb
     75 	_SIGSYS    = 0xc
     76 	_SIGPIPE   = 0xd
     77 	_SIGALRM   = 0xe
     78 	_SIGTERM   = 0xf
     79 	_SIGURG    = 0x10
     80 	_SIGSTOP   = 0x11
     81 	_SIGTSTP   = 0x12
     82 	_SIGCONT   = 0x13
     83 	_SIGCHLD   = 0x14
     84 	_SIGTTIN   = 0x15
     85 	_SIGTTOU   = 0x16
     86 	_SIGIO     = 0x17
     87 	_SIGXCPU   = 0x18
     88 	_SIGXFSZ   = 0x19
     89 	_SIGVTALRM = 0x1a
     90 	_SIGPROF   = 0x1b
     91 	_SIGWINCH  = 0x1c
     92 	_SIGINFO   = 0x1d
     93 	_SIGUSR1   = 0x1e
     94 	_SIGUSR2   = 0x1f
     95 
     96 	_FPE_INTDIV = 0x7
     97 	_FPE_INTOVF = 0x8
     98 	_FPE_FLTDIV = 0x1
     99 	_FPE_FLTOVF = 0x2
    100 	_FPE_FLTUND = 0x3
    101 	_FPE_FLTRES = 0x4
    102 	_FPE_FLTINV = 0x5
    103 	_FPE_FLTSUB = 0x6
    104 
    105 	_BUS_ADRALN = 0x1
    106 	_BUS_ADRERR = 0x2
    107 	_BUS_OBJERR = 0x3
    108 
    109 	_SEGV_MAPERR = 0x1
    110 	_SEGV_ACCERR = 0x2
    111 
    112 	_ITIMER_REAL    = 0x0
    113 	_ITIMER_VIRTUAL = 0x1
    114 	_ITIMER_PROF    = 0x2
    115 
    116 	_EV_ADD       = 0x1
    117 	_EV_DELETE    = 0x2
    118 	_EV_CLEAR     = 0x20
    119 	_EV_RECEIPT   = 0x40
    120 	_EV_ERROR     = 0x4000
    121 	_EVFILT_READ  = -0x1
    122 	_EVFILT_WRITE = -0x2
    123 )
    124 
    125 type machbody struct {
    126 	msgh_descriptor_count uint32
    127 }
    128 
    129 type machheader struct {
    130 	msgh_bits        uint32
    131 	msgh_size        uint32
    132 	msgh_remote_port uint32
    133 	msgh_local_port  uint32
    134 	msgh_reserved    uint32
    135 	msgh_id          int32
    136 }
    137 
    138 type machndr struct {
    139 	mig_vers     uint8
    140 	if_vers      uint8
    141 	reserved1    uint8
    142 	mig_encoding uint8
    143 	int_rep      uint8
    144 	char_rep     uint8
    145 	float_rep    uint8
    146 	reserved2    uint8
    147 }
    148 
    149 type machport struct {
    150 	name        uint32
    151 	pad1        uint32
    152 	pad2        uint16
    153 	disposition uint8
    154 	_type       uint8
    155 }
    156 
    157 type stackt struct {
    158 	ss_sp     *byte
    159 	ss_size   uintptr
    160 	ss_flags  int32
    161 	pad_cgo_0 [4]byte
    162 }
    163 
    164 type sigactiont struct {
    165 	__sigaction_u [8]byte
    166 	sa_tramp      unsafe.Pointer
    167 	sa_mask       uint32
    168 	sa_flags      int32
    169 }
    170 
    171 type siginfo struct {
    172 	si_signo  int32
    173 	si_errno  int32
    174 	si_code   int32
    175 	si_pid    int32
    176 	si_uid    uint32
    177 	si_status int32
    178 	si_addr   uint64
    179 	si_value  [8]byte
    180 	si_band   int64
    181 	__pad     [7]uint64
    182 }
    183 
    184 type timeval struct {
    185 	tv_sec    int64
    186 	tv_usec   int32
    187 	pad_cgo_0 [4]byte
    188 }
    189 
    190 func (tv *timeval) set_usec(x int32) {
    191 	tv.tv_usec = x
    192 }
    193 
    194 type itimerval struct {
    195 	it_interval timeval
    196 	it_value    timeval
    197 }
    198 
    199 type timespec struct {
    200 	tv_sec  int64
    201 	tv_nsec int64
    202 }
    203 
    204 type fpcontrol struct {
    205 	pad_cgo_0 [2]byte
    206 }
    207 
    208 type fpstatus struct {
    209 	pad_cgo_0 [2]byte
    210 }
    211 
    212 type regmmst struct {
    213 	mmst_reg  [10]int8
    214 	mmst_rsrv [6]int8
    215 }
    216 
    217 type regxmm struct {
    218 	xmm_reg [16]int8
    219 }
    220 
    221 type regs64 struct {
    222 	rax    uint64
    223 	rbx    uint64
    224 	rcx    uint64
    225 	rdx    uint64
    226 	rdi    uint64
    227 	rsi    uint64
    228 	rbp    uint64
    229 	rsp    uint64
    230 	r8     uint64
    231 	r9     uint64
    232 	r10    uint64
    233 	r11    uint64
    234 	r12    uint64
    235 	r13    uint64
    236 	r14    uint64
    237 	r15    uint64
    238 	rip    uint64
    239 	rflags uint64
    240 	cs     uint64
    241 	fs     uint64
    242 	gs     uint64
    243 }
    244 
    245 type floatstate64 struct {
    246 	fpu_reserved  [2]int32
    247 	fpu_fcw       fpcontrol
    248 	fpu_fsw       fpstatus
    249 	fpu_ftw       uint8
    250 	fpu_rsrv1     uint8
    251 	fpu_fop       uint16
    252 	fpu_ip        uint32
    253 	fpu_cs        uint16
    254 	fpu_rsrv2     uint16
    255 	fpu_dp        uint32
    256 	fpu_ds        uint16
    257 	fpu_rsrv3     uint16
    258 	fpu_mxcsr     uint32
    259 	fpu_mxcsrmask uint32
    260 	fpu_stmm0     regmmst
    261 	fpu_stmm1     regmmst
    262 	fpu_stmm2     regmmst
    263 	fpu_stmm3     regmmst
    264 	fpu_stmm4     regmmst
    265 	fpu_stmm5     regmmst
    266 	fpu_stmm6     regmmst
    267 	fpu_stmm7     regmmst
    268 	fpu_xmm0      regxmm
    269 	fpu_xmm1      regxmm
    270 	fpu_xmm2      regxmm
    271 	fpu_xmm3      regxmm
    272 	fpu_xmm4      regxmm
    273 	fpu_xmm5      regxmm
    274 	fpu_xmm6      regxmm
    275 	fpu_xmm7      regxmm
    276 	fpu_xmm8      regxmm
    277 	fpu_xmm9      regxmm
    278 	fpu_xmm10     regxmm
    279 	fpu_xmm11     regxmm
    280 	fpu_xmm12     regxmm
    281 	fpu_xmm13     regxmm
    282 	fpu_xmm14     regxmm
    283 	fpu_xmm15     regxmm
    284 	fpu_rsrv4     [96]int8
    285 	fpu_reserved1 int32
    286 }
    287 
    288 type exceptionstate64 struct {
    289 	trapno     uint16
    290 	cpu        uint16
    291 	err        uint32
    292 	faultvaddr uint64
    293 }
    294 
    295 type mcontext64 struct {
    296 	es        exceptionstate64
    297 	ss        regs64
    298 	fs        floatstate64
    299 	pad_cgo_0 [4]byte
    300 }
    301 
    302 type regs32 struct {
    303 	eax    uint32
    304 	ebx    uint32
    305 	ecx    uint32
    306 	edx    uint32
    307 	edi    uint32
    308 	esi    uint32
    309 	ebp    uint32
    310 	esp    uint32
    311 	ss     uint32
    312 	eflags uint32
    313 	eip    uint32
    314 	cs     uint32
    315 	ds     uint32
    316 	es     uint32
    317 	fs     uint32
    318 	gs     uint32
    319 }
    320 
    321 type floatstate32 struct {
    322 	fpu_reserved  [2]int32
    323 	fpu_fcw       fpcontrol
    324 	fpu_fsw       fpstatus
    325 	fpu_ftw       uint8
    326 	fpu_rsrv1     uint8
    327 	fpu_fop       uint16
    328 	fpu_ip        uint32
    329 	fpu_cs        uint16
    330 	fpu_rsrv2     uint16
    331 	fpu_dp        uint32
    332 	fpu_ds        uint16
    333 	fpu_rsrv3     uint16
    334 	fpu_mxcsr     uint32
    335 	fpu_mxcsrmask uint32
    336 	fpu_stmm0     regmmst
    337 	fpu_stmm1     regmmst
    338 	fpu_stmm2     regmmst
    339 	fpu_stmm3     regmmst
    340 	fpu_stmm4     regmmst
    341 	fpu_stmm5     regmmst
    342 	fpu_stmm6     regmmst
    343 	fpu_stmm7     regmmst
    344 	fpu_xmm0      regxmm
    345 	fpu_xmm1      regxmm
    346 	fpu_xmm2      regxmm
    347 	fpu_xmm3      regxmm
    348 	fpu_xmm4      regxmm
    349 	fpu_xmm5      regxmm
    350 	fpu_xmm6      regxmm
    351 	fpu_xmm7      regxmm
    352 	fpu_rsrv4     [224]int8
    353 	fpu_reserved1 int32
    354 }
    355 
    356 type exceptionstate32 struct {
    357 	trapno     uint16
    358 	cpu        uint16
    359 	err        uint32
    360 	faultvaddr uint32
    361 }
    362 
    363 type mcontext32 struct {
    364 	es exceptionstate32
    365 	ss regs32
    366 	fs floatstate32
    367 }
    368 
    369 type ucontext struct {
    370 	uc_onstack  int32
    371 	uc_sigmask  uint32
    372 	uc_stack    stackt
    373 	uc_link     *ucontext
    374 	uc_mcsize   uint64
    375 	uc_mcontext *mcontext64
    376 }
    377 
    378 type keventt struct {
    379 	ident  uint64
    380 	filter int16
    381 	flags  uint16
    382 	fflags uint32
    383 	data   int64
    384 	udata  *byte
    385 }
    386