cuserid: support invocation with a null pointer argument
[musl.git] / arch / s390x / bits / user.h
blobff3f048380a4cac9f40ddce5acedaea19111f5a1
1 #undef __WORDSIZE
2 #define __WORDSIZE 64
4 typedef union {
5 double d;
6 float f;
7 } elf_fpreg_t;
9 typedef struct {
10 unsigned fpc;
11 elf_fpreg_t fprs[16];
12 } elf_fpregset_t;
14 #define ELF_NGREG 27
15 typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG];
17 struct _user_psw_struct {
18 unsigned long mask, addr;
21 struct _user_fpregs_struct {
22 unsigned fpc;
23 double fprs[16];
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;
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;
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];
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)