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 	_EV_EOF       = 0x8000
    122 	_EVFILT_READ  = -0x1
    123 	_EVFILT_WRITE = -0x2
    124 )
    125 
    126 type machbody struct {
    127 	msgh_descriptor_count uint32
    128 }
    129 
    130 type machheader struct {
    131 	msgh_bits        uint32
    132 	msgh_size        uint32
    133 	msgh_remote_port uint32
    134 	msgh_local_port  uint32
    135 	msgh_reserved    uint32
    136 	msgh_id          int32
    137 }
    138 
    139 type machndr struct {
    140 	mig_vers     uint8
    141 	if_vers      uint8
    142 	reserved1    uint8
    143 	mig_encoding uint8
    144 	int_rep      uint8
    145 	char_rep     uint8
    146 	float_rep    uint8
    147 	reserved2    uint8
    148 }
    149 
    150 type machport struct {
    151 	name        uint32
    152 	pad1        uint32
    153 	pad2        uint16
    154 	disposition uint8
    155 	_type       uint8
    156 }
    157 
    158 type stackt struct {
    159 	ss_sp     *byte
    160 	ss_size   uintptr
    161 	ss_flags  int32
    162 	pad_cgo_0 [4]byte
    163 }
    164 
    165 type sigactiont struct {
    166 	__sigaction_u [8]byte
    167 	sa_tramp      unsafe.Pointer
    168 	sa_mask       uint32
    169 	sa_flags      int32
    170 }
    171 
    172 type usigactiont struct {
    173 	__sigaction_u [8]byte
    174 	sa_mask       uint32
    175 	sa_flags      int32
    176 }
    177 
    178 type siginfo struct {
    179 	si_signo  int32
    180 	si_errno  int32
    181 	si_code   int32
    182 	si_pid    int32
    183 	si_uid    uint32
    184 	si_status int32
    185 	si_addr   uint64
    186 	si_value  [8]byte
    187 	si_band   int64
    188 	__pad     [7]uint64
    189 }
    190 
    191 type timeval struct {
    192 	tv_sec    int64
    193 	tv_usec   int32
    194 	pad_cgo_0 [4]byte
    195 }
    196 
    197 func (tv *timeval) set_usec(x int32) {
    198 	tv.tv_usec = x
    199 }
    200 
    201 type itimerval struct {
    202 	it_interval timeval
    203 	it_value    timeval
    204 }
    205 
    206 type timespec struct {
    207 	tv_sec  int64
    208 	tv_nsec int64
    209 }
    210 
    211 type fpcontrol struct {
    212 	pad_cgo_0 [2]byte
    213 }
    214 
    215 type fpstatus struct {
    216 	pad_cgo_0 [2]byte
    217 }
    218 
    219 type regmmst struct {
    220 	mmst_reg  [10]int8
    221 	mmst_rsrv [6]int8
    222 }
    223 
    224 type regxmm struct {
    225 	xmm_reg [16]int8
    226 }
    227 
    228 type regs64 struct {
    229 	rax    uint64
    230 	rbx    uint64
    231 	rcx    uint64
    232 	rdx    uint64
    233 	rdi    uint64
    234 	rsi    uint64
    235 	rbp    uint64
    236 	rsp    uint64
    237 	r8     uint64
    238 	r9     uint64
    239 	r10    uint64
    240 	r11    uint64
    241 	r12    uint64
    242 	r13    uint64
    243 	r14    uint64
    244 	r15    uint64
    245 	rip    uint64
    246 	rflags uint64
    247 	cs     uint64
    248 	fs     uint64
    249 	gs     uint64
    250 }
    251 
    252 type floatstate64 struct {
    253 	fpu_reserved  [2]int32
    254 	fpu_fcw       fpcontrol
    255 	fpu_fsw       fpstatus
    256 	fpu_ftw       uint8
    257 	fpu_rsrv1     uint8
    258 	fpu_fop       uint16
    259 	fpu_ip        uint32
    260 	fpu_cs        uint16
    261 	fpu_rsrv2     uint16
    262 	fpu_dp        uint32
    263 	fpu_ds        uint16
    264 	fpu_rsrv3     uint16
    265 	fpu_mxcsr     uint32
    266 	fpu_mxcsrmask uint32
    267 	fpu_stmm0     regmmst
    268 	fpu_stmm1     regmmst
    269 	fpu_stmm2     regmmst
    270 	fpu_stmm3     regmmst
    271 	fpu_stmm4     regmmst
    272 	fpu_stmm5     regmmst
    273 	fpu_stmm6     regmmst
    274 	fpu_stmm7     regmmst
    275 	fpu_xmm0      regxmm
    276 	fpu_xmm1      regxmm
    277 	fpu_xmm2      regxmm
    278 	fpu_xmm3      regxmm
    279 	fpu_xmm4      regxmm
    280 	fpu_xmm5      regxmm
    281 	fpu_xmm6      regxmm
    282 	fpu_xmm7      regxmm
    283 	fpu_xmm8      regxmm
    284 	fpu_xmm9      regxmm
    285 	fpu_xmm10     regxmm
    286 	fpu_xmm11     regxmm
    287 	fpu_xmm12     regxmm
    288 	fpu_xmm13     regxmm
    289 	fpu_xmm14     regxmm
    290 	fpu_xmm15     regxmm
    291 	fpu_rsrv4     [96]int8
    292 	fpu_reserved1 int32
    293 }
    294 
    295 type exceptionstate64 struct {
    296 	trapno     uint16
    297 	cpu        uint16
    298 	err        uint32
    299 	faultvaddr uint64
    300 }
    301 
    302 type mcontext64 struct {
    303 	es        exceptionstate64
    304 	ss        regs64
    305 	fs        floatstate64
    306 	pad_cgo_0 [4]byte
    307 }
    308 
    309 type regs32 struct {
    310 	eax    uint32
    311 	ebx    uint32
    312 	ecx    uint32
    313 	edx    uint32
    314 	edi    uint32
    315 	esi    uint32
    316 	ebp    uint32
    317 	esp    uint32
    318 	ss     uint32
    319 	eflags uint32
    320 	eip    uint32
    321 	cs     uint32
    322 	ds     uint32
    323 	es     uint32
    324 	fs     uint32
    325 	gs     uint32
    326 }
    327 
    328 type floatstate32 struct {
    329 	fpu_reserved  [2]int32
    330 	fpu_fcw       fpcontrol
    331 	fpu_fsw       fpstatus
    332 	fpu_ftw       uint8
    333 	fpu_rsrv1     uint8
    334 	fpu_fop       uint16
    335 	fpu_ip        uint32
    336 	fpu_cs        uint16
    337 	fpu_rsrv2     uint16
    338 	fpu_dp        uint32
    339 	fpu_ds        uint16
    340 	fpu_rsrv3     uint16
    341 	fpu_mxcsr     uint32
    342 	fpu_mxcsrmask uint32
    343 	fpu_stmm0     regmmst
    344 	fpu_stmm1     regmmst
    345 	fpu_stmm2     regmmst
    346 	fpu_stmm3     regmmst
    347 	fpu_stmm4     regmmst
    348 	fpu_stmm5     regmmst
    349 	fpu_stmm6     regmmst
    350 	fpu_stmm7     regmmst
    351 	fpu_xmm0      regxmm
    352 	fpu_xmm1      regxmm
    353 	fpu_xmm2      regxmm
    354 	fpu_xmm3      regxmm
    355 	fpu_xmm4      regxmm
    356 	fpu_xmm5      regxmm
    357 	fpu_xmm6      regxmm
    358 	fpu_xmm7      regxmm
    359 	fpu_rsrv4     [224]int8
    360 	fpu_reserved1 int32
    361 }
    362 
    363 type exceptionstate32 struct {
    364 	trapno     uint16
    365 	cpu        uint16
    366 	err        uint32
    367 	faultvaddr uint32
    368 }
    369 
    370 type mcontext32 struct {
    371 	es exceptionstate32
    372 	ss regs32
    373 	fs floatstate32
    374 }
    375 
    376 type ucontext struct {
    377 	uc_onstack  int32
    378 	uc_sigmask  uint32
    379 	uc_stack    stackt
    380 	uc_link     *ucontext
    381 	uc_mcsize   uint64
    382 	uc_mcontext *mcontext64
    383 }
    384 
    385 type keventt struct {
    386 	ident  uint64
    387 	filter int16
    388 	flags  uint16
    389 	fflags uint32
    390 	data   int64
    391 	udata  *byte
    392 }
    393