...
Source file
src/runtime/defs_linux_amd64.go
Documentation: runtime
1
2
3
4 package runtime
5
6 import "unsafe"
7
8 const (
9 _EINTR = 0x4
10 _EAGAIN = 0xb
11 _ENOMEM = 0xc
12
13 _PROT_NONE = 0x0
14 _PROT_READ = 0x1
15 _PROT_WRITE = 0x2
16 _PROT_EXEC = 0x4
17
18 _MAP_ANON = 0x20
19 _MAP_PRIVATE = 0x2
20 _MAP_FIXED = 0x10
21
22 _MADV_DONTNEED = 0x4
23 _MADV_FREE = 0x8
24 _MADV_HUGEPAGE = 0xe
25 _MADV_NOHUGEPAGE = 0xf
26
27 _SA_RESTART = 0x10000000
28 _SA_ONSTACK = 0x8000000
29 _SA_RESTORER = 0x4000000
30 _SA_SIGINFO = 0x4
31
32 _SI_KERNEL = 0x80
33 _SI_TIMER = -0x2
34
35 _SIGHUP = 0x1
36 _SIGINT = 0x2
37 _SIGQUIT = 0x3
38 _SIGILL = 0x4
39 _SIGTRAP = 0x5
40 _SIGABRT = 0x6
41 _SIGBUS = 0x7
42 _SIGFPE = 0x8
43 _SIGKILL = 0x9
44 _SIGUSR1 = 0xa
45 _SIGSEGV = 0xb
46 _SIGUSR2 = 0xc
47 _SIGPIPE = 0xd
48 _SIGALRM = 0xe
49 _SIGSTKFLT = 0x10
50 _SIGCHLD = 0x11
51 _SIGCONT = 0x12
52 _SIGSTOP = 0x13
53 _SIGTSTP = 0x14
54 _SIGTTIN = 0x15
55 _SIGTTOU = 0x16
56 _SIGURG = 0x17
57 _SIGXCPU = 0x18
58 _SIGXFSZ = 0x19
59 _SIGVTALRM = 0x1a
60 _SIGPROF = 0x1b
61 _SIGWINCH = 0x1c
62 _SIGIO = 0x1d
63 _SIGPWR = 0x1e
64 _SIGSYS = 0x1f
65
66 _SIGRTMIN = 0x20
67
68 _FPE_INTDIV = 0x1
69 _FPE_INTOVF = 0x2
70 _FPE_FLTDIV = 0x3
71 _FPE_FLTOVF = 0x4
72 _FPE_FLTUND = 0x5
73 _FPE_FLTRES = 0x6
74 _FPE_FLTINV = 0x7
75 _FPE_FLTSUB = 0x8
76
77 _BUS_ADRALN = 0x1
78 _BUS_ADRERR = 0x2
79 _BUS_OBJERR = 0x3
80
81 _SEGV_MAPERR = 0x1
82 _SEGV_ACCERR = 0x2
83
84 _ITIMER_REAL = 0x0
85 _ITIMER_VIRTUAL = 0x1
86 _ITIMER_PROF = 0x2
87
88 _CLOCK_THREAD_CPUTIME_ID = 0x3
89
90 _SIGEV_THREAD_ID = 0x4
91
92 _EPOLLIN = 0x1
93 _EPOLLOUT = 0x4
94 _EPOLLERR = 0x8
95 _EPOLLHUP = 0x10
96 _EPOLLRDHUP = 0x2000
97 _EPOLLET = 0x80000000
98 _EPOLL_CLOEXEC = 0x80000
99 _EPOLL_CTL_ADD = 0x1
100 _EPOLL_CTL_DEL = 0x2
101 _EPOLL_CTL_MOD = 0x3
102
103 _AF_UNIX = 0x1
104 _SOCK_DGRAM = 0x2
105 )
106
107 type timespec struct {
108 tv_sec int64
109 tv_nsec int64
110 }
111
112
113 func (ts *timespec) setNsec(ns int64) {
114 ts.tv_sec = ns / 1e9
115 ts.tv_nsec = ns % 1e9
116 }
117
118 type timeval struct {
119 tv_sec int64
120 tv_usec int64
121 }
122
123 func (tv *timeval) set_usec(x int32) {
124 tv.tv_usec = int64(x)
125 }
126
127 type sigactiont struct {
128 sa_handler uintptr
129 sa_flags uint64
130 sa_restorer uintptr
131 sa_mask uint64
132 }
133
134 type siginfoFields struct {
135 si_signo int32
136 si_errno int32
137 si_code int32
138
139 si_addr uint64
140 }
141
142 type siginfo struct {
143 siginfoFields
144
145
146 _ [_si_max_size - unsafe.Sizeof(siginfoFields{})]byte
147 }
148
149 type itimerspec struct {
150 it_interval timespec
151 it_value timespec
152 }
153
154 type itimerval struct {
155 it_interval timeval
156 it_value timeval
157 }
158
159 type sigeventFields struct {
160 value uintptr
161 signo int32
162 notify int32
163
164 sigev_notify_thread_id int32
165 }
166
167 type sigevent struct {
168 sigeventFields
169
170
171 _ [_sigev_max_size - unsafe.Sizeof(sigeventFields{})]byte
172 }
173
174 type epollevent struct {
175 events uint32
176 data [8]byte
177 }
178
179
180
181
182 const (
183 _O_RDONLY = 0x0
184 _O_NONBLOCK = 0x800
185 _O_CLOEXEC = 0x80000
186 )
187
188 type usigset struct {
189 __val [16]uint64
190 }
191
192 type fpxreg struct {
193 significand [4]uint16
194 exponent uint16
195 padding [3]uint16
196 }
197
198 type xmmreg struct {
199 element [4]uint32
200 }
201
202 type fpstate struct {
203 cwd uint16
204 swd uint16
205 ftw uint16
206 fop uint16
207 rip uint64
208 rdp uint64
209 mxcsr uint32
210 mxcr_mask uint32
211 _st [8]fpxreg
212 _xmm [16]xmmreg
213 padding [24]uint32
214 }
215
216 type fpxreg1 struct {
217 significand [4]uint16
218 exponent uint16
219 padding [3]uint16
220 }
221
222 type xmmreg1 struct {
223 element [4]uint32
224 }
225
226 type fpstate1 struct {
227 cwd uint16
228 swd uint16
229 ftw uint16
230 fop uint16
231 rip uint64
232 rdp uint64
233 mxcsr uint32
234 mxcr_mask uint32
235 _st [8]fpxreg1
236 _xmm [16]xmmreg1
237 padding [24]uint32
238 }
239
240 type fpreg1 struct {
241 significand [4]uint16
242 exponent uint16
243 }
244
245 type stackt struct {
246 ss_sp *byte
247 ss_flags int32
248 pad_cgo_0 [4]byte
249 ss_size uintptr
250 }
251
252 type mcontext struct {
253 gregs [23]uint64
254 fpregs *fpstate
255 __reserved1 [8]uint64
256 }
257
258 type ucontext struct {
259 uc_flags uint64
260 uc_link *ucontext
261 uc_stack stackt
262 uc_mcontext mcontext
263 uc_sigmask usigset
264 __fpregs_mem fpstate
265 }
266
267 type sigcontext struct {
268 r8 uint64
269 r9 uint64
270 r10 uint64
271 r11 uint64
272 r12 uint64
273 r13 uint64
274 r14 uint64
275 r15 uint64
276 rdi uint64
277 rsi uint64
278 rbp uint64
279 rbx uint64
280 rdx uint64
281 rax uint64
282 rcx uint64
283 rsp uint64
284 rip uint64
285 eflags uint64
286 cs uint16
287 gs uint16
288 fs uint16
289 __pad0 uint16
290 err uint64
291 trapno uint64
292 oldmask uint64
293 cr2 uint64
294 fpstate *fpstate1
295 __reserved1 [8]uint64
296 }
297
298 type sockaddr_un struct {
299 family uint16
300 path [108]byte
301 }
302
View as plain text