mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[ObjectYAML] Add support for DWARF5 Unit header
In DWARF5 the Unit header added a new field, UnitType, and swapped the order of the address size and abbreviation offset fields. llvm-svn: 297183
This commit is contained in:
parent
57daeb1936
commit
5a909a43a0
@ -100,6 +100,7 @@ struct Entry {
|
||||
struct Unit {
|
||||
InitialLength Length;
|
||||
uint16_t Version;
|
||||
llvm::dwarf::UnitType Type; // Added in DWARF 5
|
||||
uint32_t AbbrOffset;
|
||||
uint8_t AddrSize;
|
||||
std::vector<Entry> Entries;
|
||||
@ -285,6 +286,16 @@ template <> struct ScalarEnumerationTraits<dwarf::Form> {
|
||||
}
|
||||
};
|
||||
|
||||
#define HANDLE_DW_UT(unused, name) \
|
||||
io.enumCase(value, "DW_UT_" #name, dwarf::DW_UT_##name);
|
||||
|
||||
template <> struct ScalarEnumerationTraits<dwarf::UnitType> {
|
||||
static void enumeration(IO &io, dwarf::UnitType &value) {
|
||||
#include "llvm/Support/Dwarf.def"
|
||||
io.enumFallback<Hex8>(value);
|
||||
}
|
||||
};
|
||||
|
||||
template <> struct ScalarEnumerationTraits<dwarf::Constants> {
|
||||
static void enumeration(IO &io, dwarf::Constants &value) {
|
||||
io.enumCase(value, "DW_CHILDREN_no", dwarf::DW_CHILDREN_no);
|
||||
|
@ -130,8 +130,15 @@ protected:
|
||||
virtual void onStartCompileUnit(const DWARFYAML::Unit &CU) {
|
||||
writeInitialLength(CU.Length, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint16_t)CU.Version, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint32_t)CU.AbbrOffset, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint8_t)CU.AddrSize, OS, DebugInfo.IsLittleEndian);
|
||||
if(CU.Version >= 5) {
|
||||
writeInteger((uint8_t)CU.Type, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint8_t)CU.AddrSize, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint32_t)CU.AbbrOffset, OS, DebugInfo.IsLittleEndian);
|
||||
}else {
|
||||
writeInteger((uint32_t)CU.AbbrOffset, OS, DebugInfo.IsLittleEndian);
|
||||
writeInteger((uint8_t)CU.AddrSize, OS, DebugInfo.IsLittleEndian);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
virtual void onStartDIE(const DWARFYAML::Unit &CU,
|
||||
|
@ -99,6 +99,8 @@ void MappingTraits<DWARFYAML::PubSection>::mapping(
|
||||
void MappingTraits<DWARFYAML::Unit>::mapping(IO &IO, DWARFYAML::Unit &Unit) {
|
||||
IO.mapRequired("Length", Unit.Length);
|
||||
IO.mapRequired("Version", Unit.Version);
|
||||
if (Unit.Version >= 5)
|
||||
IO.mapRequired("UnitType", Unit.Type);
|
||||
IO.mapRequired("AbbrOffset", Unit.AbbrOffset);
|
||||
IO.mapRequired("AddrSize", Unit.AddrSize);
|
||||
IO.mapOptional("Entries", Unit.Entries);
|
||||
|
582
test/ObjectYAML/MachO/DWARF5-debug_info.yaml
Normal file
582
test/ObjectYAML/MachO/DWARF5-debug_info.yaml
Normal file
@ -0,0 +1,582 @@
|
||||
# RUN: yaml2obj %s | obj2yaml | FileCheck %s
|
||||
|
||||
--- !mach-o
|
||||
FileHeader:
|
||||
magic: 0xFEEDFACF
|
||||
cputype: 0x01000007
|
||||
cpusubtype: 0x00000003
|
||||
filetype: 0x0000000A
|
||||
ncmds: 5
|
||||
sizeofcmds: 1800
|
||||
flags: 0x00000000
|
||||
reserved: 0x00000000
|
||||
LoadCommands:
|
||||
- cmd: LC_SEGMENT_64
|
||||
cmdsize: 72
|
||||
segname: __PAGEZERO
|
||||
vmaddr: 0
|
||||
vmsize: 4294967296
|
||||
fileoff: 0
|
||||
filesize: 0
|
||||
maxprot: 0
|
||||
initprot: 0
|
||||
nsects: 0
|
||||
flags: 0
|
||||
- cmd: LC_SEGMENT_64
|
||||
cmdsize: 472
|
||||
segname: __TEXT
|
||||
vmaddr: 4294967296
|
||||
vmsize: 4096
|
||||
fileoff: 0
|
||||
filesize: 0
|
||||
maxprot: 7
|
||||
initprot: 5
|
||||
nsects: 5
|
||||
flags: 0
|
||||
Sections:
|
||||
- sectname: __text
|
||||
segname: __TEXT
|
||||
addr: 0x0000000100000F50
|
||||
size: 52
|
||||
offset: 0x00000000
|
||||
align: 4
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x80000400
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __stubs
|
||||
segname: __TEXT
|
||||
addr: 0x0000000100000F84
|
||||
size: 6
|
||||
offset: 0x00000000
|
||||
align: 1
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x80000408
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000006
|
||||
reserved3: 0x00000000
|
||||
- sectname: __stub_helper
|
||||
segname: __TEXT
|
||||
addr: 0x0000000100000F8C
|
||||
size: 26
|
||||
offset: 0x00000000
|
||||
align: 2
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x80000400
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __cstring
|
||||
segname: __TEXT
|
||||
addr: 0x0000000100000FA6
|
||||
size: 14
|
||||
offset: 0x00000000
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000002
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __unwind_info
|
||||
segname: __TEXT
|
||||
addr: 0x0000000100000FB4
|
||||
size: 72
|
||||
offset: 0x00000000
|
||||
align: 2
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- cmd: LC_SEGMENT_64
|
||||
cmdsize: 232
|
||||
segname: __DATA
|
||||
vmaddr: 4294971392
|
||||
vmsize: 4096
|
||||
fileoff: 0
|
||||
filesize: 0
|
||||
maxprot: 7
|
||||
initprot: 3
|
||||
nsects: 2
|
||||
flags: 0
|
||||
Sections:
|
||||
- sectname: __nl_symbol_ptr
|
||||
segname: __DATA
|
||||
addr: 0x0000000100001000
|
||||
size: 16
|
||||
offset: 0x00000000
|
||||
align: 3
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000006
|
||||
reserved1: 0x00000001
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __la_symbol_ptr
|
||||
segname: __DATA
|
||||
addr: 0x0000000100001010
|
||||
size: 8
|
||||
offset: 0x00000000
|
||||
align: 3
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000007
|
||||
reserved1: 0x00000003
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- cmd: LC_SEGMENT_64
|
||||
cmdsize: 72
|
||||
segname: __LINKEDIT
|
||||
vmaddr: 4294975488
|
||||
vmsize: 4096
|
||||
fileoff: 4096
|
||||
filesize: 60
|
||||
maxprot: 7
|
||||
initprot: 1
|
||||
nsects: 0
|
||||
flags: 0
|
||||
- cmd: LC_SEGMENT_64
|
||||
cmdsize: 952
|
||||
segname: __DWARF
|
||||
vmaddr: 4294979584
|
||||
vmsize: 4096
|
||||
fileoff: 8192
|
||||
filesize: 765
|
||||
maxprot: 7
|
||||
initprot: 3
|
||||
nsects: 11
|
||||
flags: 0
|
||||
Sections:
|
||||
- sectname: __debug_line
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003000
|
||||
size: 69
|
||||
offset: 0x00002000
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_pubnames
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003045
|
||||
size: 27
|
||||
offset: 0x00002045
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_pubtypes
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003060
|
||||
size: 35
|
||||
offset: 0x00002060
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_aranges
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003083
|
||||
size: 48
|
||||
offset: 0x00002083
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_info
|
||||
segname: __DWARF
|
||||
addr: 0x00000001000030B3
|
||||
size: 122
|
||||
offset: 0x000020B3
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_abbrev
|
||||
segname: __DWARF
|
||||
addr: 0x000000010000312C
|
||||
size: 76
|
||||
offset: 0x0000212D
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __debug_str
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003178
|
||||
size: 142
|
||||
offset: 0x00002179
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __apple_names
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003206
|
||||
size: 60
|
||||
offset: 0x00002207
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __apple_namespac
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003242
|
||||
size: 36
|
||||
offset: 0x00002243
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __apple_types
|
||||
segname: __DWARF
|
||||
addr: 0x0000000100003266
|
||||
size: 114
|
||||
offset: 0x00002267
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
- sectname: __apple_objc
|
||||
segname: __DWARF
|
||||
addr: 0x00000001000032D8
|
||||
size: 36
|
||||
offset: 0x000022D9
|
||||
align: 0
|
||||
reloff: 0x00000000
|
||||
nreloc: 0
|
||||
flags: 0x00000000
|
||||
reserved1: 0x00000000
|
||||
reserved2: 0x00000000
|
||||
reserved3: 0x00000000
|
||||
LinkEditData:
|
||||
NameList:
|
||||
- n_strx: 2
|
||||
n_type: 0x0F
|
||||
n_sect: 1
|
||||
n_desc: 16
|
||||
n_value: 4294967296
|
||||
- n_strx: 22
|
||||
n_type: 0x0F
|
||||
n_sect: 1
|
||||
n_desc: 0
|
||||
n_value: 4294971216
|
||||
StringTable:
|
||||
- ''
|
||||
- ''
|
||||
- __mh_execute_header
|
||||
- _main
|
||||
DWARF:
|
||||
debug_abbrev:
|
||||
- Code: 0x00000001
|
||||
Tag: DW_TAG_compile_unit
|
||||
Children: DW_CHILDREN_yes
|
||||
Attributes:
|
||||
- Attribute: DW_AT_producer
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_language
|
||||
Form: DW_FORM_data2
|
||||
- Attribute: DW_AT_name
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_stmt_list
|
||||
Form: DW_FORM_sec_offset
|
||||
- Attribute: DW_AT_comp_dir
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_low_pc
|
||||
Form: DW_FORM_addr
|
||||
- Attribute: DW_AT_high_pc
|
||||
Form: DW_FORM_data4
|
||||
- Code: 0x00000002
|
||||
Tag: DW_TAG_subprogram
|
||||
Children: DW_CHILDREN_yes
|
||||
Attributes:
|
||||
- Attribute: DW_AT_low_pc
|
||||
Form: DW_FORM_addr
|
||||
- Attribute: DW_AT_high_pc
|
||||
Form: DW_FORM_data4
|
||||
- Attribute: DW_AT_frame_base
|
||||
Form: DW_FORM_exprloc
|
||||
- Attribute: DW_AT_name
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_decl_file
|
||||
Form: DW_FORM_data1
|
||||
- Attribute: DW_AT_decl_line
|
||||
Form: DW_FORM_data1
|
||||
- Attribute: DW_AT_prototyped
|
||||
Form: DW_FORM_flag_present
|
||||
- Attribute: DW_AT_type
|
||||
Form: DW_FORM_ref4
|
||||
- Attribute: DW_AT_external
|
||||
Form: DW_FORM_flag_present
|
||||
- Code: 0x00000003
|
||||
Tag: DW_TAG_formal_parameter
|
||||
Children: DW_CHILDREN_no
|
||||
Attributes:
|
||||
- Attribute: DW_AT_location
|
||||
Form: DW_FORM_exprloc
|
||||
- Attribute: DW_AT_name
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_decl_file
|
||||
Form: DW_FORM_data1
|
||||
- Attribute: DW_AT_decl_line
|
||||
Form: DW_FORM_data1
|
||||
- Attribute: DW_AT_type
|
||||
Form: DW_FORM_ref4
|
||||
- Code: 0x00000004
|
||||
Tag: DW_TAG_base_type
|
||||
Children: DW_CHILDREN_no
|
||||
Attributes:
|
||||
- Attribute: DW_AT_name
|
||||
Form: DW_FORM_strp
|
||||
- Attribute: DW_AT_encoding
|
||||
Form: DW_FORM_data1
|
||||
- Attribute: DW_AT_byte_size
|
||||
Form: DW_FORM_data1
|
||||
- Code: 0x00000005
|
||||
Tag: DW_TAG_pointer_type
|
||||
Children: DW_CHILDREN_no
|
||||
Attributes:
|
||||
- Attribute: DW_AT_type
|
||||
Form: DW_FORM_ref4
|
||||
debug_aranges:
|
||||
- Length:
|
||||
TotalLength: 44
|
||||
Version: 2
|
||||
CuOffset: 0
|
||||
AddrSize: 8
|
||||
SegSize: 0
|
||||
Descriptors:
|
||||
- Address: 0x0000000100000F50
|
||||
Length: 52
|
||||
debug_info:
|
||||
- Length:
|
||||
TotalLength: 118
|
||||
Version: 5
|
||||
UnitType: DW_UT_compile
|
||||
AbbrOffset: 0
|
||||
AddrSize: 8
|
||||
Entries:
|
||||
- AbbrCode: 0x00000001
|
||||
Values:
|
||||
- Value: 0x0000000000000001
|
||||
- Value: 0x000000000000000C
|
||||
- Value: 0x0000000000000038
|
||||
- Value: 0x0000000000000000
|
||||
- Value: 0x0000000000000046
|
||||
- Value: 0x0000000100000F50
|
||||
- Value: 0x0000000000000034
|
||||
- AbbrCode: 0x00000002
|
||||
Values:
|
||||
- Value: 0x0000000100000F50
|
||||
- Value: 0x0000000000000034
|
||||
- Value: 0x0000000000000001
|
||||
BlockData:
|
||||
- 0x56
|
||||
- Value: 0x0000000000000076
|
||||
- Value: 0x0000000000000001
|
||||
- Value: 0x0000000000000003
|
||||
- Value: 0x0000000000000001
|
||||
- Value: 0x0000000000000060
|
||||
- Value: 0x0000000000000001
|
||||
- AbbrCode: 0x00000003
|
||||
Values:
|
||||
- Value: 0x0000000000000002
|
||||
BlockData:
|
||||
- 0x91
|
||||
- 0x78
|
||||
- Value: 0x000000000000007B
|
||||
- Value: 0x0000000000000001
|
||||
- Value: 0x0000000000000003
|
||||
- Value: 0x0000000000000060
|
||||
- AbbrCode: 0x00000003
|
||||
Values:
|
||||
- Value: 0x0000000000000002
|
||||
BlockData:
|
||||
- 0x91
|
||||
- 0x70
|
||||
- Value: 0x0000000000000080
|
||||
- Value: 0x0000000000000001
|
||||
- Value: 0x0000000000000003
|
||||
- Value: 0x0000000000000067
|
||||
- AbbrCode: 0x00000000
|
||||
Values:
|
||||
- AbbrCode: 0x00000004
|
||||
Values:
|
||||
- Value: 0x0000000000000085
|
||||
- Value: 0x0000000000000005
|
||||
- Value: 0x0000000000000004
|
||||
- AbbrCode: 0x00000005
|
||||
Values:
|
||||
- Value: 0x000000000000006C
|
||||
- AbbrCode: 0x00000005
|
||||
Values:
|
||||
- Value: 0x0000000000000071
|
||||
- AbbrCode: 0x00000004
|
||||
Values:
|
||||
- Value: 0x0000000000000089
|
||||
- Value: 0x0000000000000006
|
||||
- Value: 0x0000000000000001
|
||||
- AbbrCode: 0x00000000
|
||||
Values:
|
||||
debug_line:
|
||||
- Length:
|
||||
TotalLength: 65
|
||||
Version: 2
|
||||
PrologueLength: 36
|
||||
MinInstLength: 1
|
||||
DefaultIsStmt: 1
|
||||
LineBase: 251
|
||||
LineRange: 14
|
||||
OpcodeBase: 13
|
||||
StandardOpcodeLengths:
|
||||
- 0
|
||||
- 1
|
||||
- 1
|
||||
- 1
|
||||
- 1
|
||||
- 0
|
||||
- 0
|
||||
- 0
|
||||
- 1
|
||||
- 0
|
||||
- 0
|
||||
- 1
|
||||
IncludeDirs:
|
||||
Files:
|
||||
- Name: hello_world.c
|
||||
DirIdx: 0
|
||||
ModTime: 0
|
||||
Length: 0
|
||||
Opcodes:
|
||||
- Opcode: DW_LNS_extended_op
|
||||
ExtLen: 9
|
||||
SubOpcode: DW_LNE_set_address
|
||||
Data: 4294971216
|
||||
- Opcode: 0x14
|
||||
Data: 4294971216
|
||||
- Opcode: DW_LNS_set_column
|
||||
Data: 3
|
||||
- Opcode: DW_LNS_set_prologue_end
|
||||
Data: 3
|
||||
- Opcode: DW_LNS_const_add_pc
|
||||
Data: 3
|
||||
- Opcode: 0xBB
|
||||
Data: 3
|
||||
- Opcode: 0xBB
|
||||
Data: 3
|
||||
- Opcode: DW_LNS_advance_pc
|
||||
Data: 11
|
||||
- Opcode: DW_LNS_extended_op
|
||||
ExtLen: 1
|
||||
SubOpcode: DW_LNE_end_sequence
|
||||
Data: 11
|
||||
...
|
||||
|
||||
|
||||
#CHECK: DWARF:
|
||||
#CHECK: debug_info:
|
||||
#CHECK: - Length:
|
||||
#CHECK: TotalLength: 118
|
||||
#CHECK: Version: 5
|
||||
#CHECK: UnitType: DW_UT_compile
|
||||
#CHECK: AbbrOffset: 0
|
||||
#CHECK: AddrSize: 8
|
||||
#CHECK: Entries:
|
||||
#CHECK: - AbbrCode: 0x00000001
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - Value: 0x000000000000000C
|
||||
#CHECK: - Value: 0x0000000000000038
|
||||
#CHECK: - Value: 0x0000000000000000
|
||||
#CHECK: - Value: 0x0000000000000046
|
||||
#CHECK: - Value: 0x0000000100000F50
|
||||
#CHECK: - Value: 0x0000000000000034
|
||||
#CHECK: - AbbrCode: 0x00000002
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000100000F50
|
||||
#CHECK: - Value: 0x0000000000000034
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: BlockData:
|
||||
#CHECK: - 0x56
|
||||
#CHECK: - Value: 0x0000000000000076
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - Value: 0x0000000000000003
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - Value: 0x0000000000000060
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - AbbrCode: 0x00000003
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000002
|
||||
#CHECK: BlockData:
|
||||
#CHECK: - 0x91
|
||||
#CHECK: - 0x78
|
||||
#CHECK: - Value: 0x000000000000007B
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - Value: 0x0000000000000003
|
||||
#CHECK: - Value: 0x0000000000000060
|
||||
#CHECK: - AbbrCode: 0x00000003
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000002
|
||||
#CHECK: BlockData:
|
||||
#CHECK: - 0x91
|
||||
#CHECK: - 0x70
|
||||
#CHECK: - Value: 0x0000000000000080
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - Value: 0x0000000000000003
|
||||
#CHECK: - Value: 0x0000000000000067
|
||||
#CHECK: - AbbrCode: 0x00000000
|
||||
#CHECK: Values:
|
||||
#CHECK: - AbbrCode: 0x00000004
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000085
|
||||
#CHECK: - Value: 0x0000000000000005
|
||||
#CHECK: - Value: 0x0000000000000004
|
||||
#CHECK: - AbbrCode: 0x00000005
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x000000000000006C
|
||||
#CHECK: - AbbrCode: 0x00000005
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000071
|
||||
#CHECK: - AbbrCode: 0x00000004
|
||||
#CHECK: Values:
|
||||
#CHECK: - Value: 0x0000000000000089
|
||||
#CHECK: - Value: 0x0000000000000006
|
||||
#CHECK: - Value: 0x0000000000000001
|
||||
#CHECK: - AbbrCode: 0x00000000
|
||||
#CHECK: Values:
|
@ -116,6 +116,8 @@ void dumpDebugInfo(DWARFContextInMemory &DCtx, DWARFYAML::Data &Y) {
|
||||
DWARFYAML::Unit NewUnit;
|
||||
NewUnit.Length.setLength(CU->getLength());
|
||||
NewUnit.Version = CU->getVersion();
|
||||
if(NewUnit.Version >= 5)
|
||||
NewUnit.Type = (dwarf::UnitType)CU->getUnitType();
|
||||
NewUnit.AbbrOffset = CU->getAbbreviations()->getOffset();
|
||||
NewUnit.AddrSize = CU->getAddressByteSize();
|
||||
for (auto DIE : CU->dies()) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user