Source file
src/runtime/defs_linux_arm.go
1
2
3
4
5 package runtime
6
7 import "unsafe"
8
9
10 const (
11 _EINTR = 0x4
12 _ENOMEM = 0xc
13 _EAGAIN = 0xb
14
15 _PROT_NONE = 0
16 _PROT_READ = 0x1
17 _PROT_WRITE = 0x2
18 _PROT_EXEC = 0x4
19
20 _MAP_ANON = 0x20
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 _MADV_COLLAPSE = 0x19
29
30 _SA_RESTART = 0x10000000
31 _SA_ONSTACK = 0x8000000
32 _SA_RESTORER = 0
33 _SA_SIGINFO = 0x4
34 _SI_KERNEL = 0x80
35 _SI_TIMER = -0x2
36 _SIGHUP = 0x1
37 _SIGINT = 0x2
38 _SIGQUIT = 0x3
39 _SIGILL = 0x4
40 _SIGTRAP = 0x5
41 _SIGABRT = 0x6
42 _SIGBUS = 0x7
43 _SIGFPE = 0x8
44 _SIGKILL = 0x9
45 _SIGUSR1 = 0xa
46 _SIGSEGV = 0xb
47 _SIGUSR2 = 0xc
48 _SIGPIPE = 0xd
49 _SIGALRM = 0xe
50 _SIGSTKFLT = 0x10
51 _SIGCHLD = 0x11
52 _SIGCONT = 0x12
53 _SIGSTOP = 0x13
54 _SIGTSTP = 0x14
55 _SIGTTIN = 0x15
56 _SIGTTOU = 0x16
57 _SIGURG = 0x17
58 _SIGXCPU = 0x18
59 _SIGXFSZ = 0x19
60 _SIGVTALRM = 0x1a
61 _SIGPROF = 0x1b
62 _SIGWINCH = 0x1c
63 _SIGIO = 0x1d
64 _SIGPWR = 0x1e
65 _SIGSYS = 0x1f
66 _SIGRTMIN = 0x20
67 _FPE_INTDIV = 0x1
68 _FPE_INTOVF = 0x2
69 _FPE_FLTDIV = 0x3
70 _FPE_FLTOVF = 0x4
71 _FPE_FLTUND = 0x5
72 _FPE_FLTRES = 0x6
73 _FPE_FLTINV = 0x7
74 _FPE_FLTSUB = 0x8
75 _BUS_ADRALN = 0x1
76 _BUS_ADRERR = 0x2
77 _BUS_OBJERR = 0x3
78 _SEGV_MAPERR = 0x1
79 _SEGV_ACCERR = 0x2
80 _ITIMER_REAL = 0
81 _ITIMER_PROF = 0x2
82 _ITIMER_VIRTUAL = 0x1
83 _O_RDONLY = 0
84 _O_WRONLY = 0x1
85 _O_CREAT = 0x40
86 _O_TRUNC = 0x200
87 _O_NONBLOCK = 0x800
88 _O_CLOEXEC = 0x80000
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 int32
100 tv_nsec int32
101 }
102
103
104 func (ts *timespec) setNsec(ns int64) {
105 ts.tv_sec = timediv(ns, 1e9, &ts.tv_nsec)
106 }
107
108 type stackt struct {
109 ss_sp *byte
110 ss_flags int32
111 ss_size uintptr
112 }
113
114 type sigcontext struct {
115 trap_no uint32
116 error_code uint32
117 oldmask uint32
118 r0 uint32
119 r1 uint32
120 r2 uint32
121 r3 uint32
122 r4 uint32
123 r5 uint32
124 r6 uint32
125 r7 uint32
126 r8 uint32
127 r9 uint32
128 r10 uint32
129 fp uint32
130 ip uint32
131 sp uint32
132 lr uint32
133 pc uint32
134 cpsr uint32
135 fault_address uint32
136 }
137
138 type ucontext struct {
139 uc_flags uint32
140 uc_link *ucontext
141 uc_stack stackt
142 uc_mcontext sigcontext
143 uc_sigmask uint32
144 __unused [31]int32
145 uc_regspace [128]uint32
146 }
147
148 type timeval struct {
149 tv_sec int32
150 tv_usec int32
151 }
152
153 func (tv *timeval) set_usec(x int32) {
154 tv.tv_usec = x
155 }
156
157 type itimerspec struct {
158 it_interval timespec
159 it_value timespec
160 }
161
162 type itimerval struct {
163 it_interval timeval
164 it_value timeval
165 }
166
167 type sigeventFields struct {
168 value uintptr
169 signo int32
170 notify int32
171
172 sigev_notify_thread_id int32
173 }
174
175 type sigevent struct {
176 sigeventFields
177
178
179 _ [_sigev_max_size - unsafe.Sizeof(sigeventFields{})]byte
180 }
181
182 type siginfoFields struct {
183 si_signo int32
184 si_errno int32
185 si_code int32
186
187 si_addr uint32
188 }
189
190 type siginfo struct {
191 siginfoFields
192
193
194 _ [_si_max_size - unsafe.Sizeof(siginfoFields{})]byte
195 }
196
197 type sigactiont struct {
198 sa_handler uintptr
199 sa_flags uint32
200 sa_restorer uintptr
201 sa_mask uint64
202 }
203
204 type sockaddr_un struct {
205 family uint16
206 path [108]byte
207 }
208
View as plain text