1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef __ASM_SH_USER_H
13#define __ASM_SH_USER_H
14
15#include <asm/ptrace.h>
16#include <asm/page.h>
17
18#ifdef __SH5__
19struct user_fpu_struct {
20 unsigned long fp_regs[32];
21 unsigned int fpscr;
22};
23#else
24struct user_fpu_struct {
25 unsigned long fp_regs[16];
26 unsigned long xfp_regs[16];
27 unsigned long fpscr;
28 unsigned long fpul;
29};
30#endif
31
32struct user {
33 struct pt_regs regs;
34 struct user_fpu_struct fpu;
35 int u_fpvalid;
36 size_t u_tsize;
37 size_t u_dsize;
38 size_t u_ssize;
39 unsigned long start_code;
40 unsigned long start_data;
41 unsigned long start_stack;
42 long int signal;
43 unsigned long u_ar0;
44 struct user_fpu_struct* u_fpstate;
45 unsigned long magic;
46 char u_comm[32];
47};
48
49#define NBPG PAGE_SIZE
50#define UPAGES 1
51#define HOST_TEXT_START_ADDR (u.start_code)
52#define HOST_DATA_START_ADDR (u.start_data)
53#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG)
54
55#endif
56