| 1 | /* stab.h 4.1 83/05/03 */ |
| 2 | |
| 3 | /* IF YOU ADD DEFINITIONS, ADD THEM TO nm.c as well */ |
| 4 | /* |
| 5 | * This file gives definitions supplementing <a.out.h> |
| 6 | * for permanent symbol table entries. |
| 7 | * These must have one of the N_STAB bits on, |
| 8 | * and are subject to relocation according to the masks in <a.out.h>. |
| 9 | */ |
| 10 | /* |
| 11 | * for symbolic debugger, sdb(1): |
| 12 | */ |
| 13 | #define N_GSYM 0x20 /* global symbol: name,,0,type,0 */ |
| 14 | #define N_FNAME 0x22 /* procedure name (f77 kludge): name,,0 */ |
| 15 | #define N_FUN 0x24 /* procedure: name,,0,linenumber,address */ |
| 16 | #define N_STSYM 0x26 /* static symbol: name,,0,type,address */ |
| 17 | #define N_LCSYM 0x28 /* .lcomm symbol: name,,0,type,address */ |
| 18 | #define N_RSYM 0x40 /* register sym: name,,0,type,register */ |
| 19 | #define N_SLINE 0x44 /* src line: 0,,0,linenumber,address */ |
| 20 | #define N_SSYM 0x60 /* structure elt: name,,0,type,struct_offset */ |
| 21 | #define N_SO 0x64 /* source file name: name,,0,0,address */ |
| 22 | #define N_LSYM 0x80 /* local sym: name,,0,type,offset */ |
| 23 | #define N_SOL 0x84 /* #included file name: name,,0,0,address */ |
| 24 | #define N_PSYM 0xa0 /* parameter: name,,0,type,offset */ |
| 25 | #define N_ENTRY 0xa4 /* alternate entry: name,linenumber,address */ |
| 26 | #define N_LBRAC 0xc0 /* left bracket: 0,,0,nesting level,address */ |
| 27 | #define N_RBRAC 0xe0 /* right bracket: 0,,0,nesting level,address */ |
| 28 | #define N_BCOMM 0xe2 /* begin common: name,, */ |
| 29 | #define N_ECOMM 0xe4 /* end common: name,, */ |
| 30 | #define N_ECOML 0xe8 /* end common (local name): ,,address */ |
| 31 | #define N_LENG 0xfe /* second stab entry with length information */ |
| 32 | |
| 33 | /* |
| 34 | * for the berkeley pascal compiler, pc(1): |
| 35 | */ |
| 36 | #define N_PC 0x30 /* global pascal symbol: name,,0,subtype,line */ |