]> git.proxmox.com Git - wasi-libc.git/blob - libc-top-half/musl/arch/s390x/bits/user.h
bump version to 0.0~git20240411.9e8c542-3~bpo12+pve1
[wasi-libc.git] / libc-top-half / musl / arch / s390x / bits / user.h
1 #undef __WORDSIZE
2 #define __WORDSIZE 64
3
4 typedef union {
5 double d;
6 float f;
7 } elf_fpreg_t;
8
9 typedef struct {
10 unsigned fpc;
11 elf_fpreg_t fprs[16];
12 } elf_fpregset_t;
13
14 #define ELF_NGREG 27
15 typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG];
16
17 struct _user_psw_struct {
18 unsigned long mask, addr;
19 };
20
21 struct _user_fpregs_struct {
22 unsigned fpc;
23 double fprs[16];
24 };
25
26 struct _user_per_struct {
27 unsigned long control_regs[3];
28 unsigned single_step : 1;
29 unsigned instruction_fetch : 1;
30 unsigned : 30;
31 unsigned long starting_addr, ending_addr;
32 unsigned short perc_atmid;
33 unsigned long address;
34 unsigned char access_id;
35 };
36
37 struct _user_regs_struct {
38 struct _user_psw_struct psw;
39 unsigned long gprs[16];
40 unsigned acrs[16];
41 unsigned long orig_gpr2;
42 struct _user_fpregs_struct fp_regs;
43 struct _user_per_struct per_info;
44 unsigned long ieee_instruction_pointer;
45 };
46
47 struct user {
48 struct _user_regs_struct regs;
49 unsigned long u_tsize, u_dsize, u_ssize;
50 unsigned long start_code, start_stack;
51 long signal;
52 struct _user_regs_struct *u_ar0;
53 unsigned long magic;
54 char u_comm[32];
55 };
56
57 #define PAGE_MASK (~(PAGESIZE-1))
58 #define NBPG PAGESIZE
59 #define UPAGES 1
60 #define HOST_TEXT_START_ADDR (u.start_code)
61 #define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG)
62