1/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License.  See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 1994 - 1999 by Ralf Baechle
7 */
8#ifndef _ASM_A_OUT_H
9#define _ASM_A_OUT_H
10
11struct exec
12{
13  unsigned long a_info;		/* Use macros N_MAGIC, etc for access */
14  unsigned a_text;		/* length of text, in bytes */
15  unsigned a_data;		/* length of data, in bytes */
16  unsigned a_bss;		/* length of uninitialized data area for file, in bytes */
17  unsigned a_syms;		/* length of symbol table data in file, in bytes */
18  unsigned a_entry;		/* start address */
19  unsigned a_trsize;		/* length of relocation info for text, in bytes */
20  unsigned a_drsize;		/* length of relocation info for data, in bytes */
21};
22
23#define N_TRSIZE(a)	((a).a_trsize)
24#define N_DRSIZE(a)	((a).a_drsize)
25#define N_SYMSIZE(a)	((a).a_syms)
26
27#ifdef __KERNEL__
28
29#define STACK_TOP (current->thread.mflags & MF_32BIT ? TASK_SIZE32 : TASK_SIZE)
30
31#endif
32
33#endif /* _ASM_A_OUT_H */
34