...

Source file src/runtime/defs_linux_mipsx.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	// +build mips mipsle
     6	// +build linux
     7	
     8	package runtime
     9	
    10	const (
    11		_EINTR  = 0x4
    12		_EAGAIN = 0xb
    13		_ENOMEM = 0xc
    14	
    15		_PROT_NONE  = 0x0
    16		_PROT_READ  = 0x1
    17		_PROT_WRITE = 0x2
    18		_PROT_EXEC  = 0x4
    19	
    20		_MAP_ANON    = 0x800
    21		_MAP_PRIVATE = 0x2
    22		_MAP_FIXED   = 0x10
    23	
    24		_MADV_DONTNEED   = 0x4
    25		_MADV_FREE       = 0x8
    26		_MADV_HUGEPAGE   = 0xe
    27		_MADV_NOHUGEPAGE = 0xf
    28	
    29		_SA_RESTART = 0x10000000
    30		_SA_ONSTACK = 0x8000000
    31		_SA_SIGINFO = 0x8
    32	
    33		_SIGHUP    = 0x1
    34		_SIGINT    = 0x2
    35		_SIGQUIT   = 0x3
    36		_SIGILL    = 0x4
    37		_SIGTRAP   = 0x5
    38		_SIGABRT   = 0x6
    39		_SIGEMT    = 0x7
    40		_SIGFPE    = 0x8
    41		_SIGKILL   = 0x9
    42		_SIGBUS    = 0xa
    43		_SIGSEGV   = 0xb
    44		_SIGSYS    = 0xc
    45		_SIGPIPE   = 0xd
    46		_SIGALRM   = 0xe
    47		_SIGUSR1   = 0x10
    48		_SIGUSR2   = 0x11
    49		_SIGCHLD   = 0x12
    50		_SIGPWR    = 0x13
    51		_SIGWINCH  = 0x14
    52		_SIGURG    = 0x15
    53		_SIGIO     = 0x16
    54		_SIGSTOP   = 0x17
    55		_SIGTSTP   = 0x18
    56		_SIGCONT   = 0x19
    57		_SIGTTIN   = 0x1a
    58		_SIGTTOU   = 0x1b
    59		_SIGVTALRM = 0x1c
    60		_SIGPROF   = 0x1d
    61		_SIGXCPU   = 0x1e
    62		_SIGXFSZ   = 0x1f
    63	
    64		_FPE_INTDIV = 0x1
    65		_FPE_INTOVF = 0x2
    66		_FPE_FLTDIV = 0x3
    67		_FPE_FLTOVF = 0x4
    68		_FPE_FLTUND = 0x5
    69		_FPE_FLTRES = 0x6
    70		_FPE_FLTINV = 0x7
    71		_FPE_FLTSUB = 0x8
    72	
    73		_BUS_ADRALN = 0x1
    74		_BUS_ADRERR = 0x2
    75		_BUS_OBJERR = 0x3
    76	
    77		_SEGV_MAPERR = 0x1
    78		_SEGV_ACCERR = 0x2
    79	
    80		_ITIMER_REAL    = 0x0
    81		_ITIMER_VIRTUAL = 0x1
    82		_ITIMER_PROF    = 0x2
    83	
    84		_EPOLLIN       = 0x1
    85		_EPOLLOUT      = 0x4
    86		_EPOLLERR      = 0x8
    87		_EPOLLHUP      = 0x10
    88		_EPOLLRDHUP    = 0x2000
    89		_EPOLLET       = 0x80000000
    90		_EPOLL_CLOEXEC = 0x80000
    91		_EPOLL_CTL_ADD = 0x1
    92		_EPOLL_CTL_DEL = 0x2
    93		_EPOLL_CTL_MOD = 0x3
    94	)
    95	
    96	type timespec struct {
    97		tv_sec  int32
    98		tv_nsec int32
    99	}
   100	
   101	//go:nosplit
   102	func (ts *timespec) setNsec(ns int64) {
   103		ts.tv_sec = timediv(ns, 1e9, &ts.tv_nsec)
   104	}
   105	
   106	type timeval struct {
   107		tv_sec  int32
   108		tv_usec int32
   109	}
   110	
   111	//go:nosplit
   112	func (tv *timeval) set_usec(x int32) {
   113		tv.tv_usec = x
   114	}
   115	
   116	type sigactiont struct {
   117		sa_flags   uint32
   118		sa_handler uintptr
   119		sa_mask    [4]uint32
   120		// linux header does not have sa_restorer field,
   121		// but it is used in setsig(). it is no harm to put it here
   122		sa_restorer uintptr
   123	}
   124	
   125	type siginfo struct {
   126		si_signo int32
   127		si_code  int32
   128		si_errno int32
   129		// below here is a union; si_addr is the only field we use
   130		si_addr uint32
   131	}
   132	
   133	type itimerval struct {
   134		it_interval timeval
   135		it_value    timeval
   136	}
   137	
   138	type epollevent struct {
   139		events    uint32
   140		pad_cgo_0 [4]byte
   141		data      uint64
   142	}
   143	
   144	const (
   145		_O_RDONLY    = 0x0
   146		_O_CLOEXEC   = 0x80000
   147		_SA_RESTORER = 0
   148	)
   149	
   150	type stackt struct {
   151		ss_sp    *byte
   152		ss_size  uintptr
   153		ss_flags int32
   154	}
   155	
   156	type sigcontext struct {
   157		sc_regmask   uint32
   158		sc_status    uint32
   159		sc_pc        uint64
   160		sc_regs      [32]uint64
   161		sc_fpregs    [32]uint64
   162		sc_acx       uint32
   163		sc_fpc_csr   uint32
   164		sc_fpc_eir   uint32
   165		sc_used_math uint32
   166		sc_dsp       uint32
   167		sc_mdhi      uint64
   168		sc_mdlo      uint64
   169		sc_hi1       uint32
   170		sc_lo1       uint32
   171		sc_hi2       uint32
   172		sc_lo2       uint32
   173		sc_hi3       uint32
   174		sc_lo3       uint32
   175	}
   176	
   177	type ucontext struct {
   178		uc_flags    uint32
   179		uc_link     *ucontext
   180		uc_stack    stackt
   181		Pad_cgo_0   [4]byte
   182		uc_mcontext sigcontext
   183		uc_sigmask  [4]uint32
   184	}
   185	

View as plain text