stabs.h (1862B)
1 typedef struct StabSym StabSym; 2 typedef struct Stab Stab; /* defined in mach.h */ 3 4 struct StabSym 5 { 6 char *name; 7 uchar type; 8 uchar other; 9 u16int desc; 10 u32int value; 11 }; 12 13 enum 14 { 15 EXT = 0x01, 16 17 N_UNDEF = 0x00, 18 N_ABS = 0x02, 19 N_TEXT = 0x04, 20 N_DATA = 0x06, 21 N_BSS = 0x08, 22 N_INDR = 0x0A, 23 N_FN_SEQ = 0x0C, 24 N_WEAKU = 0x0D, 25 N_WEAKA = 0x0E, 26 N_WEAKT = 0x0F, 27 N_WEAKD = 0x10, 28 N_WEAKB = 0x11, 29 N_COMM = 0x12, 30 N_SETA = 0x14, 31 N_SETT = 0x16, 32 33 N_GSYM = 0x20, 34 N_FNAME = 0x22, 35 N_FUN = 0x24, 36 N_STSYM = 0x26, 37 N_LCSYM = 0x28, 38 N_MAIN = 0x2A, 39 N_ROSYM = 0x2C, 40 N_PC = 0x30, 41 N_NSYMS = 0x32, 42 N_NOMAP = 0x34, 43 N_OBJ = 0x38, 44 N_OPT = 0x3C, 45 N_RSYM = 0x40, 46 N_M2C = 0x42, 47 N_SLINE = 0x44, 48 N_DSLINE = 0x46, 49 N_BSLINE = 0x48, 50 N_BROWS = 0x48, 51 N_DEFD = 0x4A, 52 N_FLINE = 0x4C, 53 N_EHDECL = 0x50, 54 N_MOD2 = 0x50, 55 N_CATCH = 0x54, 56 N_SSYM = 0x60, 57 N_ENDM = 0x62, 58 N_SO = 0x64, 59 N_ALIAS = 0x6C, 60 N_LSYM = 0x80, 61 N_BINCL = 0x82, 62 N_SOL = 0x84, 63 N_PSYM = 0xA0, 64 N_EINCL = 0xA2, 65 N_ENTRY = 0xA4, 66 N_LBRAC = 0xC0, 67 N_EXCL = 0xC2, 68 N_SCOPE = 0xC4, 69 N_RBRAC = 0xE0, 70 N_BCOMM = 0xE2, 71 N_ECOMM = 0xE4, 72 N_ECOML = 0xE8, 73 N_WITH = 0xEA, 74 N_LENG = 0xFE 75 }; 76 77 /* 78 symbol descriptors 79 80 [(0-9\-] variable on stack 81 : C++ nested symbol 82 a parameter by reference 83 b based variable 84 c constant 85 C conformant array bound 86 name of caught exception (N_CATCH) 87 d fp register variable 88 D fp parameter 89 f file scope function 90 F global function 91 G global variable 92 i register parameter? 93 I nested procedure 94 J nested function 95 L label name 96 m module 97 p arg list parameter 98 pP 99 pF 100 P register param (N_PSYM) 101 proto of ref fun (N_FUN) 102 Q static procedure 103 R register param 104 r register variable 105 S file scope variable 106 s local variable 107 t type name 108 T sue tag 109 v param by reference 110 V procedure scope static variable 111 x conformant array 112 X function return variable 113 114 */ 115 116 int stabsym(Stab*, int, StabSym*);