Source file libc_x86_64_linux_gnu.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
(** x86_64-specific definitions for 64-bit linux-like values *)
open Types
include Linux_like
type c_char = i8
type wchar_t = i32
type nlink_t = u64
type blksize_t = i64
type greg_t = i64
type suseconds_t = i64
let posix_fadv_dontneed : c_int = 4
let posix_fadv_noreuse : c_int = 5
let veof : usize = 4
let rtld_deepbind : c_int = 0x8
let rtld_global : c_int = 0x100
let rtld_noload : c_int = 0x4
let o_append : c_int = 1024
let o_creat : c_int = 64
let o_excl : c_int = 128
let o_noctty : c_int = 256
let o_nonblock : c_int = 2048
let o_sync : c_int = 1052672
let o_rsync : c_int = 1052672
let o_dsync : c_int = 4096
let o_fsync : c_int = 0x101000
let o_noatime : c_int = 0o1000000
let o_path : c_int = 0o10000000
let o_directory : c_int = 0x10000
let o_tmpfile : c_int = 0o20000000 lor o_directory
let madv_soft_offline : c_int = 101
let map_growsdown : c_int = 0x0100
let edeadlk : c_int = 35
let enametoolong : c_int = 36
let enolck : c_int = 37
let enosys : c_int = 38
let enotempty : c_int = 39
let eloop : c_int = 40
let enomsg : c_int = 42
let eidrm : c_int = 43
let echrng : c_int = 44
let el2nsync : c_int = 45
let el3hlt : c_int = 46
let el3rst : c_int = 47
let elnrng : c_int = 48
let eunatch : c_int = 49
let enocsi : c_int = 50
let el2hlt : c_int = 51
let ebade : c_int = 52
let ebadr : c_int = 53
let exfull : c_int = 54
let enoano : c_int = 55
let ebadrqc : c_int = 56
let ebadslt : c_int = 57
let emultihop : c_int = 72
let eoverflow : c_int = 75
let enotuniq : c_int = 76
let ebadfd : c_int = 77
let ebadmsg : c_int = 74
let eremchg : c_int = 78
let elibacc : c_int = 79
let elibbad : c_int = 80
let elibscn : c_int = 81
let elibmax : c_int = 82
let elibexec : c_int = 83
let eilseq : c_int = 84
let erestart : c_int = 85
let estrpipe : c_int = 86
let eusers : c_int = 87
let enotsock : c_int = 88
let edestaddrreq : c_int = 89
let emsgsize : c_int = 90
let eprototype : c_int = 91
let enoprotoopt : c_int = 92
let eprotonosupport : c_int = 93
let esocktnosupport : c_int = 94
let eopnotsupp : c_int = 95
let epfnosupport : c_int = 96
let eafnosupport : c_int = 97
let eaddrinuse : c_int = 98
let eaddrnotavail : c_int = 99
let enetdown : c_int = 100
let enetunreach : c_int = 101
let enetreset : c_int = 102
let econnaborted : c_int = 103
let econnreset : c_int = 104
let enobufs : c_int = 105
let eisconn : c_int = 106
let enotconn : c_int = 107
let eshutdown : c_int = 108
let etoomanyrefs : c_int = 109
let etimedout : c_int = 110
let econnrefused : c_int = 111
let ehostdown : c_int = 112
let ehostunreach : c_int = 113
let ealready : c_int = 114
let einprogress : c_int = 115
let estale : c_int = 116
let edquot : c_int = 122
let enomedium : c_int = 123
let emediumtype : c_int = 124
let ecanceled : c_int = 125
let enokey : c_int = 126
let ekeyexpired : c_int = 127
let ekeyrevoked : c_int = 128
let ekeyrejected : c_int = 129
let eownerdead : c_int = 130
let enotrecoverable : c_int = 131
let ehwpoison : c_int = 133
let erfkill : c_int = 132
let sock_stream : c_int = 1
let sock_dgram : c_int = 2
let sa_onstack : c_int = 0x08000000
let sa_siginfo : c_int = 0x00000004
let sa_nocldwait : c_int = 0x00000002
let sigttin : c_int = 21
let sigttou : c_int = 22
let sigxcpu : c_int = 24
let sigxfsz : c_int = 25
let sigvtalrm : c_int = 26
let sigprof : c_int = 27
let sigwinch : c_int = 28
let sigchld : c_int = 17
let sigbus : c_int = 7
let sigusr1 : c_int = 10
let sigusr2 : c_int = 12
let sigcont : c_int = 18
let sigstop : c_int = 19
let sigtstp : c_int = 20
let sigurg : c_int = 23
let sigio : c_int = 29
let sigsys : c_int = 31
let sigstkflt : c_int = 16
let sigunused : c_int =
(31 [@deprecated since = "0.2.55", note = "use sigsys instead"])
let sigpoll : c_int = 29
let sigpwr : c_int = 30
let sig_setmask : c_int = 2
let sig_block : c_int = 0x000000
let sig_unblock : c_int = 0x01
let pollwrnorm : c_short = 0x100
let pollwrband : c_short = 0x200
let o_async : c_int = 0x2000
let o_ndelay : c_int = 0x800
let ptrace_detach : c_uint = 17
let ptrace_get_rseq_configuration : c_uint = 0x420f
let efd_nonblock : c_int = 0x800
let f_getlk : c_int = 5
let f_getown : c_int = 9
let f_setown : c_int = 8
let f_setlk : c_int = 6
let f_setlkw : c_int = 7
let f_ofd_getlk : c_int = 36
let f_ofd_setlk : c_int = 37
let f_ofd_setlkw : c_int = 38
let f_rdlck : c_int = 0
let f_wrlck : c_int = 1
let f_unlck : c_int = 2
let sfd_nonblock : c_int = 0x0800
let tcsanow : c_int = 0
let tcsadrain : c_int = 1
let tcsaflush : c_int = 2
let sfd_cloexec : c_int = 0x080000
let nccs : usize = 32
let o_trunc : c_int = 512
let o_cloexec : c_int = 0x80000
let ebfont : c_int = 59
let enostr : c_int = 60
let enodata : c_int = 61
let etime : c_int = 62
let enosr : c_int = 63
let enonet : c_int = 64
let enopkg : c_int = 65
let eremote : c_int = 66
let enolink : c_int = 67
let eadv : c_int = 68
let esrmnt : c_int = 69
let ecomm : c_int = 70
let eproto : c_int = 71
let edotdot : c_int = 73
let sa_nodefer : c_int = 0x40000000
let sa_resethand : c_int = 0x80000000
let sa_restart : c_int = 0x10000000
let sa_nocldstop : c_int = 0x00000001
let epoll_cloexec : c_int = 0x80000
let efd_cloexec : c_int = 0x80000
let __sizeof_pthread_condattr_t : usize = 4
let __sizeof_pthread_mutexattr_t : usize = 4
let __sizeof_pthread_barrierattr_t : usize = 4
let o_direct : c_int = 0x4000
let o_nofollow : c_int = 0x20000
let map_hugetlb : c_int = 0x040000
let map_locked : c_int = 0x02000
let map_noreserve : c_int = 0x04000
let map_32bit : c_int = 0x0040
let map_anon : c_int = 0x0020
let map_anonymous : c_int = 0x0020
let map_denywrite : c_int = 0x0800
let map_executable : c_int = 0x01000
let map_populate : c_int = 0x08000
let map_nonblock : c_int = 0x010000
let map_stack : c_int = 0x020000
let map_sync : c_int = 0x080000
let edeadlock : c_int = 35
let euclean : c_int = 117
let enotnam : c_int = 118
let enavail : c_int = 119
let eisnam : c_int = 120
let eremoteio : c_int = 121
let ptrace_getfpregs : c_uint = 14
let ptrace_setfpregs : c_uint = 15
let ptrace_getfpxregs : c_uint = 18
let ptrace_setfpxregs : c_uint = 19
let ptrace_getregs : c_uint = 12
let ptrace_setregs : c_uint = 13
let ptrace_peeksiginfo_shared : c_uint = 1
let ptrace_sysemu : c_uint = 31
let ptrace_sysemu_singlestep : c_uint = 32
let pr_get_speculation_ctrl : c_int = 52
let pr_set_speculation_ctrl : c_int = 53
let pr_spec_not_affected : c_uint = 0
let pr_spec_prctl : c_uint = 1 lsl 0
let pr_spec_enable : c_uint = 1 lsl 1
let pr_spec_disable : c_uint = 1 lsl 2
let pr_spec_force_disable : c_uint = 1 lsl 3
let pr_spec_disable_noexec : c_uint = 1 lsl 4
let pr_spec_store_bypass : c_int = 0
let pr_spec_indirect_branch : c_int = 1
let mcl_current : c_int = 0x0001
let mcl_future : c_int = 0x0002
let mcl_onfault : c_int = 0x0004
let sigstksz : size_t = 8192
let minsigstksz : size_t = 2048
let cbaud : tcflag_t = 0o0010017
let tab1 : tcflag_t = 0x00000800
let tab2 : tcflag_t = 0x00001000
let tab3 : tcflag_t = 0x00001800
let cr1 : tcflag_t = 0x00000200
let cr2 : tcflag_t = 0x00000400
let cr3 : tcflag_t = 0x00000600
let ff1 : tcflag_t = 0x00008000
let bs1 : tcflag_t = 0x00002000
let vt1 : tcflag_t = 0x00004000
let vwerase : usize = 14
let vreprint : usize = 12
let vsusp : usize = 10
let vstart : usize = 8
let vstop : usize = 9
let vdiscard : usize = 13
let vtime : usize = 5
let ixon : tcflag_t = 0x00000400
let ixoff : tcflag_t = 0x00001000
let onlcr : tcflag_t = 0x4
let csize : tcflag_t = 0x00000030
let cs6 : tcflag_t = 0x00000010
let cs7 : tcflag_t = 0x00000020
let cs8 : tcflag_t = 0x00000030
let cstopb : tcflag_t = 0x00000040
let cread : tcflag_t = 0x00000080
let parenb : tcflag_t = 0x00000100
let parodd : tcflag_t = 0x00000200
let hupcl : tcflag_t = 0x00000400
let clocal : tcflag_t = 0x00000800
let echoke : tcflag_t = 0x00000800
let echoe : tcflag_t = 0x00000010
let echok : tcflag_t = 0x00000020
let echonl : tcflag_t = 0x00000040
let echoprt : tcflag_t = 0x00000400
let echoctl : tcflag_t = 0x00000200
let isig : tcflag_t = 0x00000001
let icanon : tcflag_t = 0x00000002
let pendin : tcflag_t = 0x00004000
let noflsh : tcflag_t = 0x00000080
let cibaud : tcflag_t = 0o02003600000
let cbaudex : tcflag_t = 0o010000
let vswtc : usize = 7
let olcuc : tcflag_t = 0o000002
let nldly : tcflag_t = 0o000400
let crdly : tcflag_t = 0o003000
let tabdly : tcflag_t = 0o014000
let bsdly : tcflag_t = 0o020000
let ffdly : tcflag_t = 0o100000
let vtdly : tcflag_t = 0o040000
let xtabs : tcflag_t = 0o014000
let b0 : speed_t = 0o000000
let b50 : speed_t = 0o000001
let b75 : speed_t = 0o000002
let b110 : speed_t = 0o000003
let b134 : speed_t = 0o000004
let b150 : speed_t = 0o000005
let b200 : speed_t = 0o000006
let b300 : speed_t = 0o000007
let b600 : speed_t = 0o000010
let b1200 : speed_t = 0o000011
let b1800 : speed_t = 0o000012
let b2400 : speed_t = 0o000013
let b4800 : speed_t = 0o000014
let b9600 : speed_t = 0o000015
let b19200 : speed_t = 0o000016
let b38400 : speed_t = 0o000017
let exta : speed_t = b19200
let extb : speed_t = b38400
let b57600 : speed_t = 0o010001
let b115200 : speed_t = 0o010002
let b230400 : speed_t = 0o010003
let b460800 : speed_t = 0o010004
let b500000 : speed_t = 0o010005
let b576000 : speed_t = 0o010006
let b921600 : speed_t = 0o010007
let b1000000 : speed_t = 0o010010
let b1152000 : speed_t = 0o010011
let b1500000 : speed_t = 0o010012
let b2000000 : speed_t = 0o010013
let b2500000 : speed_t = 0o010014
let b3000000 : speed_t = 0o010015
let b3500000 : speed_t = 0o010016
let b4000000 : speed_t = 0o010017
let veol : usize = 11
let veol2 : usize = 16
let vmin : usize = 6
let iexten : tcflag_t = 0x00008000
let tostop : tcflag_t = 0x00000100
let flusho : tcflag_t = 0x00001000
let extproc : tcflag_t = 0x00010000
let r15 : c_int = 0
let r14 : c_int = 1
let r13 : c_int = 2
let r12 : c_int = 3
let rbp : c_int = 4
let rbx : c_int = 5
let r11 : c_int = 6
let r10 : c_int = 7
let r9 : c_int = 8
let r8 : c_int = 9
let rax : c_int = 10
let rcx : c_int = 11
let rdx : c_int = 12
let rsi : c_int = 13
let rdi : c_int = 14
let orig_rax : c_int = 15
let rip : c_int = 16
let cs : c_int = 17
let eflags : c_int = 18
let rsp : c_int = 19
let ss : c_int = 20
let fs_base : c_int = 21
let gs_base : c_int = 22
let ds : c_int = 23
let es : c_int = 24
let fs : c_int = 25
let gs : c_int = 26
let reg_r8 : c_int = 0
let reg_r9 : c_int = 1
let reg_r10 : c_int = 2
let reg_r11 : c_int = 3
let reg_r12 : c_int = 4
let reg_r13 : c_int = 5
let reg_r14 : c_int = 6
let reg_r15 : c_int = 7
let reg_rdi : c_int = 8
let reg_rsi : c_int = 9
let reg_rbp : c_int = 10
let reg_rbx : c_int = 11
let reg_rdx : c_int = 12
let reg_rax : c_int = 13
let reg_rcx : c_int = 14
let reg_rsp : c_int = 15
let reg_rip : c_int = 16
let reg_efl : c_int = 17
let reg_csgsfs : c_int = 18
let reg_err : c_int = 19
let reg_trapno : c_int = 20
let reg_oldmask : c_int = 21
let reg_cr2 : c_int = 22