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