Source file
src/runtime/defs_linux_riscv64.go
1
2
3
4
5 package runtime
6
7 import "unsafe"
8
9 const (
10 _EINTR = 0x4
11 _EAGAIN = 0xb
12 _ENOMEM = 0xc
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
28 _SA_RESTART = 0x10000000
29 _SA_ONSTACK = 0x8000000
30 _SA_RESTORER = 0x0
31 _SA_SIGINFO = 0x4
32
33 _SI_KERNEL = 0x80
34 _SI_TIMER = -0x2
35
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
67 _SIGRTMIN = 0x20
68
69 _FPE_INTDIV = 0x1
70 _FPE_INTOVF = 0x2
71 _FPE_FLTDIV = 0x3
72 _FPE_FLTOVF = 0x4
73 _FPE_FLTUND = 0x5
74 _FPE_FLTRES = 0x6
75 _FPE_FLTINV = 0x7
76 _FPE_FLTSUB = 0x8
77
78 _BUS_ADRALN = 0x1
79 _BUS_ADRERR = 0x2
80 _BUS_OBJERR = 0x3
81
82 _SEGV_MAPERR = 0x1
83 _SEGV_ACCERR = 0x2
84
85 _ITIMER_REAL = 0x0
86 _ITIMER_VIRTUAL = 0x1
87 _ITIMER_PROF = 0x2
88
89 _CLOCK_THREAD_CPUTIME_ID = 0x3
90
91 _SIGEV_THREAD_ID = 0x4
92
93 _EPOLLIN = 0x1
94 _EPOLLOUT = 0x4
95 _EPOLLERR = 0x8
96 _EPOLLHUP = 0x10
97 _EPOLLRDHUP = 0x2000
98 _EPOLLET = 0x80000000
99 _EPOLL_CLOEXEC = 0x80000
100 _EPOLL_CTL_ADD = 0x1
101 _EPOLL_CTL_DEL = 0x2
102 _EPOLL_CTL_MOD = 0x3
103 )
104
105 type timespec struct {
106 tv_sec int64
107 tv_nsec int64
108 }
109
110
111 func (ts *timespec) setNsec(ns int64) {
112 ts.tv_sec = ns / 1e9
113 ts.tv_nsec = ns % 1e9
114 }
115
116 type timeval struct {
117 tv_sec int64
118 tv_usec int64
119 }
120
121 func (tv *timeval) set_usec(x int32) {
122 tv.tv_usec = int64(x)
123 }
124
125 type sigactiont struct {
126 sa_handler uintptr
127 sa_flags uint64
128 sa_mask uint64
129
130
131 sa_restorer uintptr
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 pad_cgo_0 [4]byte
177 data [8]byte
178 }
179
180 const (
181 _O_RDONLY = 0x0
182 _O_NONBLOCK = 0x800
183 _O_CLOEXEC = 0x80000
184 )
185
186 type user_regs_struct struct {
187 pc uint64
188 ra uint64
189 sp uint64
190 gp uint64
191 tp uint64
192 t0 uint64
193 t1 uint64
194 t2 uint64
195 s0 uint64
196 s1 uint64
197 a0 uint64
198 a1 uint64
199 a2 uint64
200 a3 uint64
201 a4 uint64
202 a5 uint64
203 a6 uint64
204 a7 uint64
205 s2 uint64
206 s3 uint64
207 s4 uint64
208 s5 uint64
209 s6 uint64
210 s7 uint64
211 s8 uint64
212 s9 uint64
213 s10 uint64
214 s11 uint64
215 t3 uint64
216 t4 uint64
217 t5 uint64
218 t6 uint64
219 }
220
221 type user_fpregs_struct struct {
222 f [528]byte
223 }
224
225 type usigset struct {
226 us_x__val [16]uint64
227 }
228
229 type sigcontext struct {
230 sc_regs user_regs_struct
231 sc_fpregs user_fpregs_struct
232 }
233
234 type stackt struct {
235 ss_sp *byte
236 ss_flags int32
237 ss_size uintptr
238 }
239
240 type ucontext struct {
241 uc_flags uint64
242 uc_link *ucontext
243 uc_stack stackt
244 uc_sigmask usigset
245 uc_x__unused [0]uint8
246 uc_pad_cgo_0 [8]byte
247 uc_mcontext sigcontext
248 }
249
View as plain text