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