cleanup
[linux-2.4.git] / include / asm-ppc64 / a.out.h
1 #ifndef __PPC64_A_OUT_H__
2 #define __PPC64_A_OUT_H__
3
4 #include <asm/ppcdebug.h>
5
6 /*
7  * c 2001 PPC 64 Team, IBM Corp
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License
11  * as published by the Free Software Foundation; either version
12  * 2 of the License, or (at your option) any later version.
13  */
14
15 struct exec
16 {
17         unsigned long a_info;   /* Use macros N_MAGIC, etc for access */
18         unsigned a_text;        /* length of text, in bytes */
19         unsigned a_data;        /* length of data, in bytes */
20         unsigned a_bss;         /* length of uninitialized data area for file, in bytes */
21         unsigned a_syms;        /* length of symbol table data in file, in bytes */
22         unsigned a_entry;       /* start address */
23         unsigned a_trsize;      /* length of relocation info for text, in bytes */
24         unsigned a_drsize;      /* length of relocation info for data, in bytes */
25 };
26
27 #define N_TRSIZE(a)     ((a).a_trsize)
28 #define N_DRSIZE(a)     ((a).a_drsize)
29 #define N_SYMSIZE(a)    ((a).a_syms)
30
31 #ifdef __KERNEL__
32
33 /* 64-bit user address space is less PGDIR_SIZE due to pgd_index() bug. */
34 #define STACK_TOP_USER64 (TASK_SIZE_USER64)
35
36 /* Give 32-bit user space a full 4G address space to live in. */
37 #define STACK_TOP_USER32 (TASK_SIZE_USER32)
38
39 #define STACK_TOP (((current->thread.flags & PPC_FLAG_32BIT)||(ppcdebugset(PPCDBG_BINFMT_32ADDR))) ? \
40                 STACK_TOP_USER32 : STACK_TOP_USER64)
41
42 #endif /* __KERNEL__ */
43
44 #endif /* __PPC64_A_OUT_H__ */