diff options
author | Thomas Bushnell <thomas@gnu.org> | 1997-02-25 21:28:37 +0000 |
---|---|---|
committer | Thomas Bushnell <thomas@gnu.org> | 1997-02-25 21:28:37 +0000 |
commit | f07a4c844da9f0ecae5bbee1ab94be56505f26f7 (patch) | |
tree | 12b07c7e578fc1a5f53dbfde2632408491ff2a70 /ddb/nlist.h | |
download | gnumach-f07a4c844da9f0ecae5bbee1ab94be56505f26f7.tar.gz gnumach-f07a4c844da9f0ecae5bbee1ab94be56505f26f7.tar.bz2 gnumach-f07a4c844da9f0ecae5bbee1ab94be56505f26f7.zip |
Initial source
Diffstat (limited to 'ddb/nlist.h')
-rw-r--r-- | ddb/nlist.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/ddb/nlist.h b/ddb/nlist.h new file mode 100644 index 00000000..b948dfd3 --- /dev/null +++ b/ddb/nlist.h @@ -0,0 +1,63 @@ +/* + * Mach Operating System + * Copyright (c) 1991 Carnegie Mellon University + * All Rights Reserved. + * + * Permission to use, copy, modify and distribute this software and its + * documentation is hereby granted, provided that both the copyright + * notice and this permission notice appear in all copies of the + * software, derivative works or modified versions, and any portions + * thereof, and that both notices appear in supporting documentation. + * + * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" + * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR + * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. + * + * Carnegie Mellon requests users of this software to return to + * + * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU + * School of Computer Science + * Carnegie Mellon University + * Pittsburgh PA 15213-3890 + * + * any improvements or extensions that they make and grant Carnegie Mellon + * the rights to redistribute these changes. + */ +/* + * nlist.h - symbol table entry structure for an a.out file + * derived from FSF's a.out.gnu.h + * + */ + +#ifndef _DDB_NLIST_H_ +#define _DDB_NLIST_H_ + +struct nlist { + union n_un { + char *n_name; /* symbol name */ + long n_strx; /* index into file string table */ + } n_un; + unsigned char n_type; /* type flag, i.e. N_TEXT etc; see below */ + unsigned char n_other; /* machdep uses */ + short n_desc; /* see <stab.h> */ +#if alpha + int n_pad; /* alignment, used to carry framesize info */ +#endif + vm_offset_t n_value; /* value of this symbol (or sdb offset) */ +}; + +/* + * Simple values for n_type. + */ +#define N_UNDF 0 /* undefined */ +#define N_ABS 2 /* absolute */ +#define N_TEXT 4 /* text */ +#define N_DATA 6 /* data */ +#define N_BSS 8 /* bss */ +#define N_FN 0x1f /* file name symbol */ +#define N_EXT 1 /* external bit, or'ed in */ +#define N_TYPE 0x1e /* mask for all the type bits */ +#define N_STAB 0xe0 /* if any of these bits set, a SDB entry */ + + +#endif /* _DDB_NLIST_H_ */ |