ReactOS 0.4.15-dev-7942-gd23573b
dwarf.h
Go to the documentation of this file.
1#include "compat.h"
2
3typedef struct Dwarf Dwarf;
4typedef struct DwarfAttrs DwarfAttrs;
5typedef struct DwarfBlock DwarfBlock;
6typedef struct DwarfBuf DwarfBuf;
7typedef struct DwarfExpr DwarfExpr;
8typedef struct DwarfSym DwarfSym;
9typedef struct DwarfStack DwarfStack;
10typedef struct DwarfParam DwarfParam;
11typedef union DwarfVal DwarfVal;
12
13enum
14{
21 TagLabel = 0x0A,
23 TagMember = 0x0D,
30 TagTypedef = 0x16,
33 TagVariant = 0x19,
38 TagModule = 0x1E,
40 TagSetType = 0x20,
50 TagFriend = 0x2A,
71
75 TypeFloat = 0x04,
76 TypeSigned = 0x05,
81
85
86 VisLocal = 0x01,
89
90 VirtNone = 0x00,
93
94 LangC89 = 0x0001,
95 LangC = 0x0002,
96 LangAda83 = 0x0003,
97 LangCplusplus = 0x0004,
98 LangCobol74 = 0x0005,
99 LangCobol85 = 0x0006,
102 LangPascal83 = 0x0009,
103 LangModula2 = 0x000A,
104 LangJava = 0x000B,
105 LangC99 = 0x000C,
106 LangAda95 = 0x000D,
108 LangPLI = 0x000F,
109 /* 0x8000-0xFFFF reserved */
110
115
119 /* 0x40-0xFF reserved */
120
121 InNone = 0x00,
122 InInlined = 0x01,
125
128
129 DiscLabel = 0x00,
130 DiscRange = 0x01,
131
133 TBlock = 1<<1,
134 TConstant = 1<<2,
135 TString = 1<<3,
136 TFlag = 1<<4,
137 TAddress = 1<<5,
138
139 OpAddr = 0x03, /* 1 op, const addr */
140 OpDeref = 0x06,
141 OpConst1u = 0x08, /* 1 op, 1 byte const */
142 OpConst1s = 0x09, /* " signed */
143 OpConst2u = 0x0A, /* 1 op, 2 byte const */
144 OpConst2s = 0x0B, /* " signed */
145 OpConst4u = 0x0C, /* 1 op, 4 byte const */
146 OpConst4s = 0x0D, /* " signed */
147 OpConst8u = 0x0E, /* 1 op, 8 byte const */
148 OpConst8s = 0x0F, /* " signed */
149 OpConstu = 0x10, /* 1 op, LEB128 const */
150 OpConsts = 0x11, /* " signed */
151 OpDup = 0x12,
152 OpDrop = 0x13,
153 OpOver = 0x14,
154 OpPick = 0x15, /* 1 op, 1 byte stack index */
155 OpSwap = 0x16,
156 OpRot = 0x17,
157 OpXderef = 0x18,
158 OpAbs = 0x19,
159 OpAnd = 0x1A,
160 OpDiv = 0x1B,
161 OpMinus = 0x1C,
162 OpMod = 0x1D,
163 OpMul = 0x1E,
164 OpNeg = 0x1F,
165 OpNot = 0x20,
166 OpOr = 0x21,
167 OpPlus = 0x22,
168 OpPlusUconst = 0x23, /* 1 op, ULEB128 addend */
169 OpShl = 0x24,
170 OpShr = 0x25,
171 OpShra = 0x26,
172 OpXor = 0x27,
173 OpSkip = 0x2F, /* 1 op, signed 2-byte constant */
174 OpBra = 0x28, /* 1 op, signed 2-byte constant */
175 OpEq = 0x29,
176 OpGe = 0x2A,
177 OpGt = 0x2B,
178 OpLe = 0x2C,
179 OpLt = 0x2D,
180 OpNe = 0x2E,
181 OpLit0 = 0x30,
182 /* OpLitN = OpLit0 + N for N = 0..31 */
183 OpReg0 = 0x50,
184 /* OpRegN = OpReg0 + N for N = 0..31 */
185 OpBreg0 = 0x70, /* 1 op, signed LEB128 constant */
186 /* OpBregN = OpBreg0 + N for N = 0..31 */
187 OpRegx = 0x90, /* 1 op, ULEB128 register */
188 OpFbreg = 0x91, /* 1 op, SLEB128 offset */
189 OpBregx = 0x92, /* 2 op, ULEB128 reg, SLEB128 off */
190 OpPiece = 0x93, /* 1 op, ULEB128 size of piece */
191 OpDerefSize = 0x94, /* 1-byte size of data retrieved */
192 OpXderefSize = 0x95, /* 1-byte size of data retrieved */
193 OpNop = 0x96,
194 /* next four new in Dwarf v3 */
196 OpCall2 = 0x98, /* 2-byte offset of DIE */
197 OpCall4 = 0x99, /* 4-byte offset of DIE */
198 OpCallRef = 0x9A /* 4- or 8- byte offset of DIE */
199 /* 0xE0-0xFF reserved for user-specific */
201
202struct DwarfBlock
203{
204 uchar *data;
205 ulong len;
206};
207
209{
210 char *name;
216};
217
218/* not for consumer use */
219struct DwarfBuf
220{
221 Dwarf *d;
222 uchar *p;
223 uchar *ep;
225};
226
227union DwarfVal
228{
229 char *s;
230 ulong c;
231 ulong r;
233};
234
235struct DwarfAttrs
236{
237 ulong tag;
239
240 /* whether we have it, along with type */
241 struct {
254 uchar count;
260 uchar discr;
265 uchar friend;
269 uchar import;
280 uchar lowpc;
282 uchar name;
297 uchar type;
304
314 char* compdir;
317 ulong count;
323 ulong discr;
328 ulong friend;
332 ulong import;
343 ulong lowpc;
345 char* name;
349 char* producer;
360 ulong type;
366};
367
368enum
369{
377struct DwarfExpr
378{
379 int type;
380 long offset;
381 ulong reg;
383};
384
385struct DwarfSym
386{
388
389/* not for consumer use... */
391 DwarfBuf b;
392 int depth;
394 ulong aoff;
395};
396
397struct _Pe;
398Dwarf *dwarfopen(struct _Pe *elf);
399void dwarfclose(Dwarf*);
402int dwarflookupname(Dwarf*, char*, DwarfSym*);
408int dwarfenum(Dwarf*, DwarfSym*);
411int dwarfpctoline(Dwarf*, DwarfSym *proc, ulong, char**, char**, ulong *);
412int dwarfgetarg(Dwarf *d, const char *name, DwarfBuf *locbuf, ulong cfa, PROSSYM_REGISTERS registers, ulong *value);
414
422int dwarfgetn(DwarfBuf*, uchar*, int);
428int dwarfgetparams(Dwarf *d, DwarfSym *s, ulong pc, int pnum, DwarfParam *paramblocks);
429
431typedef struct DwarfAttr DwarfAttr;
432
433struct DwarfAttr
434{
435 ulong name;
436 ulong form;
437};
438
439struct DwarfAbbrev
440{
441 ulong num;
442 ulong tag;
445 int nattr;
446};
447
448struct _Pe;
449
450struct Dwarf
451{
452 struct _Pe *pe;
453
454 char **reg;
455 int nreg;
456 int addrsize;
467
468 /* little cache */
469 struct {
470 DwarfAbbrev *a;
471 int na;
472 ulong off;
474};
475
477{
478 ulong storage[16]; // own storage
481};
482
484
486void dwarfdumpsym(Dwarf *d, DwarfSym *s);
487
488#define MAXIMUM_DWARF_NAME_SIZE 64
unsigned char uchar
Definition: Unfrag.h:59
UINT32 uint
Definition: types.h:83
r parent
Definition: btrfs.c:3010
unsigned long ulong
Definition: linux.h:275
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLdouble s
Definition: gl.h:2039
GLfloat param
Definition: glext.h:5796
int registers[NUMREGS]
#define d
Definition: ke_i.h:81
#define a
Definition: ke_i.h:78
static HWND child
Definition: cursoricon.c:298
static HANDLE proc()
Definition: pdb.c:34
unsigned long long uvlong
Definition: compat.h:9
int dwarfgetn(DwarfBuf *, uchar *, int)
Definition: dwarfget.c:27
ulong dwarfget128(DwarfBuf *)
Definition: dwarfget.c:152
ulong dwarfget2(DwarfBuf *)
Definition: dwarfget.c:81
int dwarfenumunit(Dwarf *, ulong, DwarfSym *)
Definition: dwarfinfo.c:201
int dwarfgetinfounit(Dwarf *, ulong, DwarfBlock *)
int dwarfpctoline(Dwarf *, ulong, char **, char **, char **, char **, ulong *, ulong *, ulong *)
Definition: dwarfpc.c:48
Dwarf * dwarfopen(struct _Pe *elf)
Definition: dwarfopen.c:16
int dwarflookuptag(Dwarf *, ulong, ulong, DwarfSym *)
Definition: dwarfinfo.c:151
int dwarflookupfn(Dwarf *, ulong, ulong, DwarfSym *)
Definition: dwarfinfo.c:181
char * dwarfgetstring(DwarfBuf *)
Definition: dwarfget.c:54
ulong dwarfget1(DwarfBuf *)
Definition: dwarfget.c:17
void dwarfclose(Dwarf *)
Definition: dwarfopen.c:57
long dwarfget128s(DwarfBuf *)
Definition: dwarfget.c:197
int dwarfseeksym(Dwarf *, ulong, ulong, DwarfSym *)
Definition: dwarfinfo.c:170
int dwarflookupnameinunit(Dwarf *, ulong, char *, DwarfSym *)
Definition: dwarfinfo.c:125
int dwarflookupsubname(Dwarf *, DwarfSym *, char *, DwarfSym *)
Definition: dwarfinfo.c:140
int dwarfnextsym(Dwarf *, DwarfSym *)
Definition: dwarfinfo.c:250
ulong dwarfgetaddr(DwarfBuf *)
Definition: dwarfget.c:123
@ LangC
Definition: dwarf.h:93
@ TagSetType
Definition: dwarf.h:38
@ TypeAddress
Definition: dwarf.h:70
@ TagNamelist
Definition: dwarf.h:49
@ OpLit0
Definition: dwarf.h:179
@ LangC99
Definition: dwarf.h:103
@ OpConst4s
Definition: dwarf.h:144
@ OpCall4
Definition: dwarf.h:195
@ TagLabel
Definition: dwarf.h:19
@ TagTryDwarfBlock
Definition: dwarf.h:56
@ TagCompileUnit
Definition: dwarf.h:24
@ VirtNone
Definition: dwarf.h:88
@ TagStringType
Definition: dwarf.h:25
@ LangPLI
Definition: dwarf.h:106
@ OpLe
Definition: dwarf.h:176
@ TagStructType
Definition: dwarf.h:26
@ TagVariantPart
Definition: dwarf.h:57
@ TagVariable
Definition: dwarf.h:58
@ TagFormalParameter
Definition: dwarf.h:17
@ TagPtrToMemberType
Definition: dwarf.h:37
@ CallingNocall
Definition: dwarf.h:116
@ LangAda95
Definition: dwarf.h:104
@ OpGt
Definition: dwarf.h:175
@ OpConst4u
Definition: dwarf.h:143
@ LangJava
Definition: dwarf.h:102
@ OpConsts
Definition: dwarf.h:148
@ TypeUnsignedChar
Definition: dwarf.h:77
@ TypeUnsigned
Definition: dwarf.h:76
@ OpConst2u
Definition: dwarf.h:141
@ TypeFloat
Definition: dwarf.h:73
@ OpMul
Definition: dwarf.h:161
@ TagCommonDwarfBlock
Definition: dwarf.h:32
@ TagVolatileType
Definition: dwarf.h:59
@ AccessPublic
Definition: dwarf.h:80
@ TAddress
Definition: dwarf.h:135
@ OpConst8u
Definition: dwarf.h:145
@ TagConstant
Definition: dwarf.h:45
@ OpSwap
Definition: dwarf.h:153
@ DiscRange
Definition: dwarf.h:128
@ OpNeg
Definition: dwarf.h:162
@ TypeSigned
Definition: dwarf.h:74
@ TagTemplateTypeParameter
Definition: dwarf.h:53
@ OpReg0
Definition: dwarf.h:181
@ OpRegx
Definition: dwarf.h:185
@ LangPascal83
Definition: dwarf.h:100
@ TString
Definition: dwarf.h:133
@ TagInterfaceType
Definition: dwarf.h:62
@ LangCplusplus
Definition: dwarf.h:95
@ VisQualified
Definition: dwarf.h:86
@ OpDrop
Definition: dwarf.h:150
@ TagVariant
Definition: dwarf.h:31
@ OpPlus
Definition: dwarf.h:165
@ LangCobol74
Definition: dwarf.h:96
@ OpDup
Definition: dwarf.h:149
@ TagInheritance
Definition: dwarf.h:34
@ TReference
Definition: dwarf.h:130
@ TagImportedUnit
Definition: dwarf.h:67
@ TagDwarfProcedure
Definition: dwarf.h:60
@ TagUnionType
Definition: dwarf.h:29
@ TagNamespace
Definition: dwarf.h:63
@ TConstant
Definition: dwarf.h:132
@ OpCallRef
Definition: dwarf.h:196
@ OpMod
Definition: dwarf.h:160
@ CallingProgram
Definition: dwarf.h:115
@ OpDiv
Definition: dwarf.h:158
@ OpPlusUconst
Definition: dwarf.h:166
@ OpAddr
Definition: dwarf.h:137
@ OpLt
Definition: dwarf.h:177
@ OpXor
Definition: dwarf.h:170
@ TypeSignedChar
Definition: dwarf.h:75
@ TagEnumerationType
Definition: dwarf.h:16
@ OpRot
Definition: dwarf.h:154
@ TagMember
Definition: dwarf.h:21
@ TagLexDwarfBlock
Definition: dwarf.h:20
@ InDeclaredNotInlined
Definition: dwarf.h:121
@ TagPartialUnit
Definition: dwarf.h:66
@ TagCatchDwarfBlock
Definition: dwarf.h:43
@ OpFbreg
Definition: dwarf.h:186
@ AccessProtected
Definition: dwarf.h:81
@ DiscLabel
Definition: dwarf.h:127
@ TagNamelistItem
Definition: dwarf.h:50
@ OpNe
Definition: dwarf.h:178
@ InDeclaredInlined
Definition: dwarf.h:122
@ IdCaseUpper
Definition: dwarf.h:110
@ VirtVirtual
Definition: dwarf.h:89
@ OpBregx
Definition: dwarf.h:187
@ OpEq
Definition: dwarf.h:173
@ IdCaseSensitive
Definition: dwarf.h:109
@ TypeComplexFloat
Definition: dwarf.h:72
@ TagBaseType
Definition: dwarf.h:42
@ TagEntryPoint
Definition: dwarf.h:15
@ OpOr
Definition: dwarf.h:164
@ VisLocal
Definition: dwarf.h:84
@ OpConst1s
Definition: dwarf.h:140
@ TagTypedef
Definition: dwarf.h:28
@ LangFortran90
Definition: dwarf.h:99
@ TypeBoolean
Definition: dwarf.h:71
@ TagPackedType
Definition: dwarf.h:51
@ TagMutableType
Definition: dwarf.h:68
@ OrderRowMajor
Definition: dwarf.h:124
@ OpBreg0
Definition: dwarf.h:183
@ OpNop
Definition: dwarf.h:191
@ TagImportedModule
Definition: dwarf.h:64
@ InNone
Definition: dwarf.h:119
@ TagTemplateValueParameter
Definition: dwarf.h:54
@ OpXderef
Definition: dwarf.h:155
@ LangModula2
Definition: dwarf.h:101
@ OpPiece
Definition: dwarf.h:188
@ OpBra
Definition: dwarf.h:172
@ TagReferenceType
Definition: dwarf.h:23
@ OpMinus
Definition: dwarf.h:159
@ LangCobol85
Definition: dwarf.h:97
@ TagWithStmt
Definition: dwarf.h:40
@ TagConstType
Definition: dwarf.h:44
@ OpAnd
Definition: dwarf.h:157
@ OpXderefSize
Definition: dwarf.h:190
@ IdCaseLower
Definition: dwarf.h:111
@ TypeImaginaryFloat
Definition: dwarf.h:78
@ TagSubprogram
Definition: dwarf.h:52
@ VirtPureVirtual
Definition: dwarf.h:90
@ TagEnumerator
Definition: dwarf.h:46
@ OpConst2s
Definition: dwarf.h:142
@ OpPushObjAddr
Definition: dwarf.h:193
@ OpConstu
Definition: dwarf.h:147
@ OpGe
Definition: dwarf.h:174
@ OpShra
Definition: dwarf.h:169
@ OpPick
Definition: dwarf.h:152
@ TagThrownType
Definition: dwarf.h:55
@ TBlock
Definition: dwarf.h:131
@ TagSubrangeType
Definition: dwarf.h:39
@ TagArrayType
Definition: dwarf.h:13
@ OpConst8s
Definition: dwarf.h:146
@ OpNot
Definition: dwarf.h:163
@ TagInlinedSubroutine
Definition: dwarf.h:35
@ TagFileType
Definition: dwarf.h:47
@ TagClassType
Definition: dwarf.h:14
@ AccessPrivate
Definition: dwarf.h:82
@ OpAbs
Definition: dwarf.h:156
@ TagSubroutineType
Definition: dwarf.h:27
@ OpConst1u
Definition: dwarf.h:139
@ OpDerefSize
Definition: dwarf.h:189
@ TagUnspecifiedParameters
Definition: dwarf.h:30
@ TagUnspecifiedType
Definition: dwarf.h:65
@ OpShr
Definition: dwarf.h:168
@ OpSkip
Definition: dwarf.h:171
@ LangAda83
Definition: dwarf.h:94
@ InInlined
Definition: dwarf.h:120
@ TagAccessDeclaration
Definition: dwarf.h:41
@ LangC89
Definition: dwarf.h:92
@ OpShl
Definition: dwarf.h:167
@ LangFortran95
Definition: dwarf.h:105
@ TagRestrictType
Definition: dwarf.h:61
@ OpOver
Definition: dwarf.h:151
@ IdCaseInsensitive
Definition: dwarf.h:112
@ OpCall2
Definition: dwarf.h:194
@ TagCommonInclusion
Definition: dwarf.h:33
@ TagPointerType
Definition: dwarf.h:22
@ OrderColumnMajor
Definition: dwarf.h:125
@ OpDeref
Definition: dwarf.h:138
@ TFlag
Definition: dwarf.h:134
@ TagImportedDeclaration
Definition: dwarf.h:18
@ CallingNormal
Definition: dwarf.h:114
@ VisExported
Definition: dwarf.h:85
@ TagModule
Definition: dwarf.h:36
@ TagFriend
Definition: dwarf.h:48
@ LangFortran77
Definition: dwarf.h:98
int dwarfenum(Dwarf *, DwarfSym *)
Definition: dwarfinfo.c:241
uchar * dwarfgetnref(DwarfBuf *, ulong)
Definition: dwarfget.c:40
int dwarfaddrtounit(Dwarf *, ulong, ulong *)
Definition: dwarfaranges.c:16
int dwarfnextsymat(Dwarf *, DwarfSym *, int)
Definition: dwarfinfo.c:292
@ RuleLocation
Definition: dwarf.h:363
@ RuleRegOff
Definition: dwarf.h:362
@ RuleRegister
Definition: dwarf.h:361
@ RuleSame
Definition: dwarf.h:359
@ RuleCfaOffset
Definition: dwarf.h:360
@ RuleUndef
Definition: dwarf.h:358
ulong dwarfget4(DwarfBuf *)
Definition: dwarfget.c:95
uvlong dwarfget8(DwarfBuf *)
Definition: dwarfget.c:109
int dwarflookupname(Dwarf *, char *, DwarfSym *)
Definition: dwarfpubnames.c:67
DwarfAbbrev * dwarfgetabbrev(Dwarf *, ulong, ulong)
Definition: dwarfabbrev.c:128
int dwarfgetparams(Dwarf *d, DwarfSym *s, ulong pc, int pnum, DwarfParam *paramblocks)
Definition: dwarfinfo.c:987
int dwarfcomputecfa(Dwarf *d, DwarfExpr *cfa, PROSSYM_REGISTERS registers, ulong *cfaLocation)
Definition: dwarfcfa.c:404
void dwarfdumpsym(Dwarf *d, DwarfSym *s)
Definition: dwarfinfo.c:968
int dwarfgetarg(Dwarf *d, const char *name, DwarfBuf *locbuf, ulong cfa, PROSSYM_REGISTERS registers, ulong *value)
Definition: dwarfinfo.c:658
int dwarfregunwind(Dwarf *d, ulong pc, ulong fde, DwarfExpr *cfa, PROSSYM_REGISTERS registers)
Definition: dwarfcfa.c:419
int dwarfargvalue(Dwarf *d, DwarfSym *proc, ulong pc, ulong cfa, PROSSYM_REGISTERS registers, DwarfParam *parameters)
Definition: dwarfinfo.c:909
int dwarfgettype(Dwarf *d, DwarfSym *param, DwarfSym *type)
int nattr
Definition: dwarf.h:431
ulong num
Definition: dwarf.h:427
ulong tag
Definition: dwarf.h:428
uchar haskids
Definition: dwarf.h:429
DwarfAttr * attr
Definition: dwarf.h:430
ulong form
Definition: dwarf.h:422
ulong name
Definition: dwarf.h:421
uchar haskids
Definition: dwarf.h:226
uchar lowerbound
Definition: dwarf.h:267
uchar bytesize
Definition: dwarf.h:236
uchar containingtype
Definition: dwarf.h:241
struct DwarfAttrs::@4963 have
ulong tag
Definition: dwarf.h:225
uchar isvarparam
Definition: dwarf.h:264
uchar datamemberloc
Definition: dwarf.h:243
uchar returnaddr
Definition: dwarf.h:276
uchar startscope
Definition: dwarf.h:280
uchar macroinfo
Definition: dwarf.h:269
uchar namelistitem
Definition: dwarf.h:271
uchar declline
Definition: dwarf.h:246
uchar defaultvalue
Definition: dwarf.h:247
uchar accessibility
Definition: dwarf.h:231
uchar identifiercase
Definition: dwarf.h:256
uchar addrclass
Definition: dwarf.h:232
uchar abstractorigin
Definition: dwarf.h:230
uchar isoptional
Definition: dwarf.h:262
uchar stmtlist
Definition: dwarf.h:282
uchar declfile
Definition: dwarf.h:245
uchar priority
Definition: dwarf.h:273
uchar count
Definition: dwarf.h:242
uchar discr
Definition: dwarf.h:248
uchar name
Definition: dwarf.h:270
uchar basetypes
Definition: dwarf.h:233
uchar uselocation
Definition: dwarf.h:287
uchar ordering
Definition: dwarf.h:272
uchar specification
Definition: dwarf.h:279
uchar isdeclaration
Definition: dwarf.h:260
uchar sibling
Definition: dwarf.h:278
uchar vtableelemloc
Definition: dwarf.h:290
uchar type
Definition: dwarf.h:285
uchar entrypc
Definition: dwarf.h:255
uchar visibility
Definition: dwarf.h:289
uchar commonref
Definition: dwarf.h:238
uchar highpc
Definition: dwarf.h:254
uchar constvalue
Definition: dwarf.h:240
uchar isprototyped
Definition: dwarf.h:263
uchar stringlength
Definition: dwarf.h:284
uchar producer
Definition: dwarf.h:274
uchar compdir
Definition: dwarf.h:239
uchar lowpc
Definition: dwarf.h:268
uchar discrvalue
Definition: dwarf.h:250
uchar bitsize
Definition: dwarf.h:235
uchar declcolumn
Definition: dwarf.h:244
uchar isexternal
Definition: dwarf.h:261
uchar bitoffset
Definition: dwarf.h:234
uchar virtuality
Definition: dwarf.h:288
uchar calling
Definition: dwarf.h:237
uchar upperbound
Definition: dwarf.h:286
uchar location
Definition: dwarf.h:266
uchar discrlist
Definition: dwarf.h:249
uchar stridesize
Definition: dwarf.h:283
uchar segment
Definition: dwarf.h:277
uchar encoding
Definition: dwarf.h:251
uchar ranges
Definition: dwarf.h:275
uchar framebase
Definition: dwarf.h:252
uchar language
Definition: dwarf.h:265
uchar inlined
Definition: dwarf.h:258
uchar isartificial
Definition: dwarf.h:259
uchar staticlink
Definition: dwarf.h:281
uchar * data
Definition: dwarf.h:202
ulong len
Definition: dwarf.h:203
uint addrsize
Definition: dwarf.h:212
Dwarf * d
Definition: dwarf.h:209
uchar * p
Definition: dwarf.h:210
uchar * ep
Definition: dwarf.h:211
int type
Definition: dwarf.h:367
ulong reg
Definition: dwarf.h:369
DwarfBlock loc
Definition: dwarf.h:370
long offset
Definition: dwarf.h:368
char * name
Definition: dwarf.h:210
ulong type
Definition: dwarf.h:212
ulong fde
Definition: dwarf.h:214
ulong value
Definition: dwarf.h:215
ulong loctype
Definition: dwarf.h:213
ulong unit
Definition: dwarf.h:211
ulong len
Definition: dwarf.h:214
ulong storage[16]
Definition: dwarf.h:478
ulong length
Definition: dwarf.h:480
ulong max
Definition: dwarf.h:480
ulong * data
Definition: dwarf.h:479
DwarfAttrs attrs
Definition: dwarf.h:375
ulong aoff
Definition: dwarf.h:381
ulong childoff
Definition: dwarf.h:393
ulong nextunit
Definition: dwarf.h:384
DwarfBuf b
Definition: dwarf.h:378
uint num
Definition: dwarf.h:390
int depth
Definition: dwarf.h:382
ulong unit
Definition: dwarf.h:379
Definition: dwarf.h:437
DwarfBlock aranges
Definition: dwarf.h:444
DwarfBlock line
Definition: dwarf.h:447
DwarfBlock ranges
Definition: dwarf.h:450
DwarfBlock info
Definition: dwarf.h:446
DwarfBlock loc
Definition: dwarf.h:466
DwarfBlock str
Definition: dwarf.h:451
DwarfBlock pubnames
Definition: dwarf.h:448
struct Dwarf::@4964 acache
struct _Pe * pe
Definition: dwarf.h:438
int addrsize
Definition: dwarf.h:442
DwarfBlock frame
Definition: dwarf.h:445
char ** reg
Definition: dwarf.h:440
int nreg
Definition: dwarf.h:441
DwarfBlock pubtypes
Definition: dwarf.h:449
DwarfBlock abbrev
Definition: dwarf.h:443
Definition: pe.h:14
Definition: name.c:39
char * s
Definition: dwarf.h:217
ulong r
Definition: dwarf.h:219
DwarfBlock b
Definition: dwarf.h:220
ulong c
Definition: dwarf.h:218
Definition: pdh_main.c:94