# Functions
Abbrevs returns the finalized abbrev array for the platform, expanding any DW_FORM pseudo-ops to real values.
AppendSleb128 appends v to b using DWARF's signed LEB128 encoding.
AppendUleb128 appends v to b using DWARF's unsigned LEB128 encoding.
No description provided by the author
GetAbbrev returns the contents of the .debug_abbrev section.
HasChildren reports whether 'die' uses an abbrev that supports children.
IsDWARFEnabledOnAIXLd returns true if DWARF is possible on the current extld.
MergeRanges creates a new range list by merging the ranges from its two arguments, then returns the new list.
Emit DWARF attributes and child DIEs for an 'abstract' subprogram.
PutAttrs writes the attributes for a DIE to symbol 's'.
PutBasedRanges writes a range table to sym.
Emit DWARF attributes and child DIEs for a 'concrete' subprogram, meaning the out-of-line copy of a function that was inlined at some point during the compilation of its containing package.
Emit DWARF attributes and child DIEs for a subprogram.
PutGlobal writes a DIE for a global variable.
PutIntConst writes a DIE for an integer constant.
Sleb128put appends v to s using DWARF's signed LEB128 encoding.
Uleb128put appends v to s using DWARF's unsigned LEB128 encoding.
# Constants
Used to form the symbol name assigned to the DWARF 'abstract subprogram" info entry for a function.
ConstInfoPrefix is the prefix for all symbols containing DWARF info entries that contain constants.
CUInfoPrefix is the prefix for symbols containing information to populate the DWARF compilation unit info entries.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
only for void*, no DW_AT_type attr to please gdb 6.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Index into the abbrevs table below.
Table 28.
Table 28.
Table 28.
reference.
constant.
constant.
block, constant, reference.
flag.
block, constant, reference.
reference.
constant.
block, constant, reference.
block, constant, reference.
constant.
block, constant, reference.
block, constant, reference.
constant.
constant.
constant.
constant.
reference.
string.
block, constant, string.
reference.
block, constant, reference.
block.
block, constant, loclistptr.
constant.
constant.
constant.
constant.
constant.
flag.
reference.
string.
constant.
reference.
block.
constant.
flag.
constant.
constant.
address.
flag.
reference.
flag.
block, loclistptr.
reference.
Attribute for DW_TAG_typedef_type, index of the dictionary entry describing the real type of this type shape.
Go-specific type attributes.
Attribute for DW_TAG_member of a struct type.
Go-specific type attributes.
Go-specific type attributes.
Attribute for DW_TAG_compile_unit.
Go-specific type attributes.
---.
address.
constant.
reference.
constant.
params and locals; not emitted.
flag.
constant.
---.
block, loclistptr.
address.
block, constant, reference.
macptr.
flag.
string.
block.
reference.
constant.
string.
reference.
string.
flag.
flag.
rangelistptr.
flag.
block, loclistptr.
block, loclistptr.
reference.
reference.
reference.
constant.
block, loclistptr.
lineptr.
block, loclistptr.
flag.
address, flag, reference, string.
reference.
block, constant, reference.
block, loclistptr.
flag.
flag.
constant.
constant.
block, loclistptr.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 25.
Table 33.
Table 33.
Table 33.
Table 33.
Table 33.
+delta.
1-byte delta.
2-byte delta.
4-byte delta.
ULEB128 register, ULEB128 offset.
BLOCK.
ULEB128 offset.
SLEB128 offset.
ULEB128 register.
ULEB128 register, SLEB128 offset.
ULEB128 register, BLOCK.
Table 40.
Table 40.
operand,...
+register (ULEB128 offset).
ULEB128 register, ULEB128 offset.
ULEB128 register, SLEB128 offset.
ULEB128 register, ULEB128 register.
Table 40.
+register.
ULEB128 register.
Table 40.
ULEB128 register.
address.
ULEB128 register.
ULEB128, BLOCK.
ULEB128, ULEB128.
ULEB128, SLEB128.
Table 19.
Table 19.
Not from the spec, but logically belongs here.
Not from the spec, but logically belongs here.
Not from the spec, but logically belongs here.
Not from the spec, but logically belongs here.
Not from the spec, but logically belongs here.
Go-specific internal hackery.
lineptr, loclistptr, macptr, rangelistptr.
Not from the spec, but logically belongs here.
Not from the spec, but logically belongs here.
Table 26.
Table 26.
Table 26.
Table 26.
Table 26.
Table 36.
Table 36.
Table 27.
Table 27.
Table 27.
Table 27.
Table 27.
address.
block.
block.
block.
block.
constant.
constant.
constant, lineptr, loclistptr, macptr, rangelistptr.
constant, lineptr, loclistptr, macptr, rangelistptr.
exprloc.
flag.
flag.
(see Section 7.5.3).
reference.
reference.
reference.
reference.
reference.
reference.
reference.
constant.
lineptr, loclistptr, macptr, rangelistptr.
string.
string.
constant.
Pseudo-form: expanded to data4 on IOS, udata elsewhere.
Table 32.
Table 32.
Table 32.
Table 32.
Table 34.
Table 34.
Table 34.
Table 34.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Dwarf5.
Table 31.
Dwarf3.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Table 31.
Dwarf4.
Table 31.
Table 38.
Table 38.
Table 38.
Table 38.
Table 38.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Table 37.
Dwarf3.
Table 39.
Table 39.
Table 39.
Table 39.
Table 39.
Index into the abbrevs table below.
0.
1 constant address (size target specific).
0.
2.
1 signed 2-byte constant.
1 ...
1 SLEB128 offset base register 0..31 = (DW_OP_breg0 + regnum).
2 ULEB128 register followed by SLEB128 offset.
0.
1 4- or 8-byte offset of DIE.
1 2-byte offset of DIE.
1 4-byte offset of DIE.
1 1-byte constant.
1 1-byte constant.
1 2-byte constant.
1 2-byte constant.
1 4-byte constant.
1 4-byte constant.
1 8-byte constant.
1 8-byte constant.
1 SLEB128 constant.
1 ULEB128 constant.
0.
1 1-byte size of data retrieved.
0.
0.
0.
0.
1 SLEB128 offset.
0.
0.
0.
Table 24 (#operands, notes).
0.
0 ...
0 literals 0..31 = (DW_OP_lit0 + literal).
Table 24 (#operands, notes).
0.
0.
0.
0.
0.
0.
0.
0.
0.
0.
1 1-byte stack index.
1 ULEB128 size of piece addressed.
0.
1 ULEB128 addend.
0.
0 ..
0 reg 0..31 = (DW_OP_reg0 + regnum).
1 ULEB128 register.
0.
0.
0.
0.
1 signed 2-byte constant.
0.
0.
1 1-byte size of data retrieved.
0.
Table 35.
Table 35.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Dwarf3.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
User defined.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Dwarf4.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 18.
Table 30.
Table 30.
Table 30.
Table 29.
Table 29.
Table 29.
InfoPrefix is the prefix for all the symbols containing DWARF info entries.
# Structs
DWAttr represents an attribute of a DWDie.
DWDie represents a DWARF debug info entry.
This container is used by the PutFunc* variants below when creating the DWARF subprogram DIE(s) for a function.
No description provided by the author
No description provided by the author
A Range represents a half-open interval [Start, End).
A Scope represents a lexical scope.
A Var represents a local variable or a function parameter.