...

Source file src/runtime/defs_linux_s390x.go

     1	// Copyright 2016 The Go Authors. All rights reserved.
     2	// Use of this source code is governed by a BSD-style
     3	// license that can be found in the LICENSE file.
     4	
     5	package runtime
     6	
     7	const (
     8		_EINTR  = 0x4
     9		_EAGAIN = 0xb
    10		_ENOMEM = 0xc
    11	
    12		_PROT_NONE  = 0x0
    13		_PROT_READ  = 0x1
    14		_PROT_WRITE = 0x2
    15		_PROT_EXEC  = 0x4
    16	
    17		_MAP_ANON    = 0x20
    18		_MAP_PRIVATE = 0x2
    19		_MAP_FIXED   = 0x10
    20	
    21		_MADV_DONTNEED   = 0x4
    22		_MADV_FREE       = 0x8
    23		_MADV_HUGEPAGE   = 0xe
    24		_MADV_NOHUGEPAGE = 0xf
    25	
    26		_SA_RESTART = 0x10000000
    27		_SA_ONSTACK = 0x8000000
    28		_SA_SIGINFO = 0x4
    29	
    30		_SIGHUP    = 0x1
    31		_SIGINT    = 0x2
    32		_SIGQUIT   = 0x3
    33		_SIGILL    = 0x4
    34		_SIGTRAP   = 0x5
    35		_SIGABRT   = 0x6
    36		_SIGBUS    = 0x7
    37		_SIGFPE    = 0x8
    38		_SIGKILL   = 0x9
    39		_SIGUSR1   = 0xa
    40		_SIGSEGV   = 0xb
    41		_SIGUSR2   = 0xc
    42		_SIGPIPE   = 0xd
    43		_SIGALRM   = 0xe
    44		_SIGSTKFLT = 0x10
    45		_SIGCHLD   = 0x11
    46		_SIGCONT   = 0x12
    47		_SIGSTOP   = 0x13
    48		_SIGTSTP   = 0x14
    49		_SIGTTIN   = 0x15
    50		_SIGTTOU   = 0x16
    51		_SIGURG    = 0x17
    52		_SIGXCPU   = 0x18
    53		_SIGXFSZ   = 0x19
    54		_SIGVTALRM = 0x1a
    55		_SIGPROF   = 0x1b
    56		_SIGWINCH  = 0x1c
    57		_SIGIO     = 0x1d
    58		_SIGPWR    = 0x1e
    59		_SIGSYS    = 0x1f
    60	
    61		_FPE_INTDIV = 0x1
    62		_FPE_INTOVF = 0x2
    63		_FPE_FLTDIV = 0x3
    64		_FPE_FLTOVF = 0x4
    65		_FPE_FLTUND = 0x5
    66		_FPE_FLTRES = 0x6
    67		_FPE_FLTINV = 0x7
    68		_FPE_FLTSUB = 0x8
    69	
    70		_BUS_ADRALN = 0x1
    71		_BUS_ADRERR = 0x2
    72		_BUS_OBJERR = 0x3
    73	
    74		_SEGV_MAPERR = 0x1
    75		_SEGV_ACCERR = 0x2
    76	
    77		_ITIMER_REAL    = 0x0
    78		_ITIMER_VIRTUAL = 0x1
    79		_ITIMER_PROF    = 0x2
    80	
    81		_EPOLLIN       = 0x1
    82		_EPOLLOUT      = 0x4
    83		_EPOLLERR      = 0x8
    84		_EPOLLHUP      = 0x10
    85		_EPOLLRDHUP    = 0x2000
    86		_EPOLLET       = 0x80000000
    87		_EPOLL_CLOEXEC = 0x80000
    88		_EPOLL_CTL_ADD = 0x1
    89		_EPOLL_CTL_DEL = 0x2
    90		_EPOLL_CTL_MOD = 0x3
    91	)
    92	
    93	type timespec struct {
    94		tv_sec  int64
    95		tv_nsec int64
    96	}
    97	
    98	//go:nosplit
    99	func (ts *timespec) setNsec(ns int64) {
   100		ts.tv_sec = ns / 1e9
   101		ts.tv_nsec = ns % 1e9
   102	}
   103	
   104	type timeval struct {
   105		tv_sec  int64
   106		tv_usec int64
   107	}
   108	
   109	func (tv *timeval) set_usec(x int32) {
   110		tv.tv_usec = int64(x)
   111	}
   112	
   113	type sigactiont struct {
   114		sa_handler  uintptr
   115		sa_flags    uint64
   116		sa_restorer uintptr
   117		sa_mask     uint64
   118	}
   119	
   120	type siginfo struct {
   121		si_signo int32
   122		si_errno int32
   123		si_code  int32
   124		// below here is a union; si_addr is the only field we use
   125		si_addr uint64
   126	}
   127	
   128	type itimerval struct {
   129		it_interval timeval
   130		it_value    timeval
   131	}
   132	
   133	type epollevent struct {
   134		events    uint32
   135		pad_cgo_0 [4]byte
   136		data      [8]byte // unaligned uintptr
   137	}
   138	
   139	const (
   140		_O_RDONLY    = 0x0
   141		_O_CLOEXEC   = 0x80000
   142		_SA_RESTORER = 0
   143	)
   144	
   145	type stackt struct {
   146		ss_sp    *byte
   147		ss_flags int32
   148		ss_size  uintptr
   149	}
   150	
   151	type sigcontext struct {
   152		psw_mask uint64
   153		psw_addr uint64
   154		gregs    [16]uint64
   155		aregs    [16]uint32
   156		fpc      uint32
   157		fpregs   [16]uint64
   158	}
   159	
   160	type ucontext struct {
   161		uc_flags    uint64
   162		uc_link     *ucontext
   163		uc_stack    stackt
   164		uc_mcontext sigcontext
   165		uc_sigmask  uint64
   166	}
   167	

View as plain text