...
Run Format

Source file src/runtime/defs_linux_ppc64le.go

Documentation: runtime

  // created by cgo -cdefs and then converted to Go
  // cgo -cdefs defs_linux.go defs3_linux.go
  
  package runtime
  
  const (
  	_EINTR  = 0x4
  	_EAGAIN = 0xb
  	_ENOMEM = 0xc
  
  	_PROT_NONE  = 0x0
  	_PROT_READ  = 0x1
  	_PROT_WRITE = 0x2
  	_PROT_EXEC  = 0x4
  
  	_MAP_ANON    = 0x20
  	_MAP_PRIVATE = 0x2
  	_MAP_FIXED   = 0x10
  
  	_MADV_DONTNEED   = 0x4
  	_MADV_HUGEPAGE   = 0xe
  	_MADV_NOHUGEPAGE = 0xf
  
  	_SA_RESTART = 0x10000000
  	_SA_ONSTACK = 0x8000000
  	_SA_SIGINFO = 0x4
  
  	_SIGHUP    = 0x1
  	_SIGINT    = 0x2
  	_SIGQUIT   = 0x3
  	_SIGILL    = 0x4
  	_SIGTRAP   = 0x5
  	_SIGABRT   = 0x6
  	_SIGBUS    = 0x7
  	_SIGFPE    = 0x8
  	_SIGKILL   = 0x9
  	_SIGUSR1   = 0xa
  	_SIGSEGV   = 0xb
  	_SIGUSR2   = 0xc
  	_SIGPIPE   = 0xd
  	_SIGALRM   = 0xe
  	_SIGSTKFLT = 0x10
  	_SIGCHLD   = 0x11
  	_SIGCONT   = 0x12
  	_SIGSTOP   = 0x13
  	_SIGTSTP   = 0x14
  	_SIGTTIN   = 0x15
  	_SIGTTOU   = 0x16
  	_SIGURG    = 0x17
  	_SIGXCPU   = 0x18
  	_SIGXFSZ   = 0x19
  	_SIGVTALRM = 0x1a
  	_SIGPROF   = 0x1b
  	_SIGWINCH  = 0x1c
  	_SIGIO     = 0x1d
  	_SIGPWR    = 0x1e
  	_SIGSYS    = 0x1f
  
  	_FPE_INTDIV = 0x1
  	_FPE_INTOVF = 0x2
  	_FPE_FLTDIV = 0x3
  	_FPE_FLTOVF = 0x4
  	_FPE_FLTUND = 0x5
  	_FPE_FLTRES = 0x6
  	_FPE_FLTINV = 0x7
  	_FPE_FLTSUB = 0x8
  
  	_BUS_ADRALN = 0x1
  	_BUS_ADRERR = 0x2
  	_BUS_OBJERR = 0x3
  
  	_SEGV_MAPERR = 0x1
  	_SEGV_ACCERR = 0x2
  
  	_ITIMER_REAL    = 0x0
  	_ITIMER_VIRTUAL = 0x1
  	_ITIMER_PROF    = 0x2
  
  	_EPOLLIN       = 0x1
  	_EPOLLOUT      = 0x4
  	_EPOLLERR      = 0x8
  	_EPOLLHUP      = 0x10
  	_EPOLLRDHUP    = 0x2000
  	_EPOLLET       = 0x80000000
  	_EPOLL_CLOEXEC = 0x80000
  	_EPOLL_CTL_ADD = 0x1
  	_EPOLL_CTL_DEL = 0x2
  	_EPOLL_CTL_MOD = 0x3
  )
  
  //struct Sigset {
  //	uint64	sig[1];
  //};
  //typedef uint64 Sigset;
  
  type timespec struct {
  	tv_sec  int64
  	tv_nsec int64
  }
  
  func (ts *timespec) set_sec(x int64) {
  	ts.tv_sec = x
  }
  
  func (ts *timespec) set_nsec(x int32) {
  	ts.tv_nsec = int64(x)
  }
  
  type timeval struct {
  	tv_sec  int64
  	tv_usec int64
  }
  
  func (tv *timeval) set_usec(x int32) {
  	tv.tv_usec = int64(x)
  }
  
  type sigactiont struct {
  	sa_handler  uintptr
  	sa_flags    uint64
  	sa_restorer uintptr
  	sa_mask     uint64
  }
  
  type siginfo struct {
  	si_signo int32
  	si_errno int32
  	si_code  int32
  	// below here is a union; si_addr is the only field we use
  	si_addr uint64
  }
  
  type itimerval struct {
  	it_interval timeval
  	it_value    timeval
  }
  
  type epollevent struct {
  	events    uint32
  	pad_cgo_0 [4]byte
  	data      [8]byte // unaligned uintptr
  }
  
  // created by cgo -cdefs and then converted to Go
  // cgo -cdefs defs_linux.go defs3_linux.go
  
  const (
  	_O_RDONLY    = 0x0
  	_O_CLOEXEC   = 0x80000
  	_SA_RESTORER = 0
  )
  
  type ptregs struct {
  	gpr       [32]uint64
  	nip       uint64
  	msr       uint64
  	orig_gpr3 uint64
  	ctr       uint64
  	link      uint64
  	xer       uint64
  	ccr       uint64
  	softe     uint64
  	trap      uint64
  	dar       uint64
  	dsisr     uint64
  	result    uint64
  }
  
  type vreg struct {
  	u [4]uint32
  }
  
  type stackt struct {
  	ss_sp     *byte
  	ss_flags  int32
  	pad_cgo_0 [4]byte
  	ss_size   uintptr
  }
  
  type sigcontext struct {
  	_unused     [4]uint64
  	signal      int32
  	_pad0       int32
  	handler     uint64
  	oldmask     uint64
  	regs        *ptregs
  	gp_regs     [48]uint64
  	fp_regs     [33]float64
  	v_regs      *vreg
  	vmx_reserve [101]int64
  }
  
  type ucontext struct {
  	uc_flags    uint64
  	uc_link     *ucontext
  	uc_stack    stackt
  	uc_sigmask  uint64
  	__unused    [15]uint64
  	uc_mcontext sigcontext
  }
  

View as plain text