select: fix 64-bit timeout truncation on pre-time64 kernels
[musl] / arch / i386 / bits / user.h
1 #undef __WORDSIZE
2 #define __WORDSIZE 32
3
4 typedef struct user_fpregs_struct {
5         long cwd, swd, twd, fip, fcs, foo, fos, st_space[20];
6 } elf_fpregset_t;
7
8 typedef struct user_fpxregs_struct {
9         unsigned short cwd, swd, twd, fop;
10         long fip, fcs, foo, fos, mxcsr, reserved;
11         long st_space[32], xmm_space[32], padding[56];
12 } elf_fpxregset_t;
13
14 struct user_regs_struct {
15         long ebx, ecx, edx, esi, edi, ebp, eax, xds, xes, xfs, xgs;
16         long orig_eax, eip, xcs, eflags, esp, xss;
17 };
18
19 #define ELF_NGREG 17
20 typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG];
21
22 struct user {
23         struct user_regs_struct         regs;
24         int                             u_fpvalid;
25         struct user_fpregs_struct       i387;
26         unsigned long                   u_tsize;
27         unsigned long                   u_dsize;
28         unsigned long                   u_ssize;
29         unsigned long                   start_code;
30         unsigned long                   start_stack;
31         long                            signal;
32         int                             reserved;
33         struct user_regs_struct         *u_ar0;
34         struct user_fpregs_struct       *u_fpstate;
35         unsigned long                   magic;
36         char                            u_comm[32];
37         int                             u_debugreg[8];
38 };
39
40 #define PAGE_MASK               (~(PAGESIZE-1))
41 #define NBPG                    PAGESIZE
42 #define UPAGES                  1
43 #define HOST_TEXT_START_ADDR    (u.start_code)
44 #define HOST_STACK_END_ADDR     (u.start_stack + u.u_ssize * NBPG)