aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml22
-rw-r--r--llvm/tools/obj2yaml/dwarf2yaml.cpp2
2 files changed, 17 insertions, 7 deletions
diff --git a/llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml b/llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml
index d6bcaf0..9dba060 100644
--- a/llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml
+++ b/llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml
@@ -699,6 +699,12 @@ DWARF:
# MULTI-TABLES-NEXT: Attributes:
# MULTI-TABLES-NEXT: - Attribute: DW_AT_low_pc
# MULTI-TABLES-NEXT: Form: DW_FORM_data4
+# MULTI-TABLES-NEXT: - Code: 0x0000000000000002
+# MULTI-TABLES-NEXT: Tag: DW_TAG_compile_unit
+# MULTI-TABLES-NEXT: Children: DW_CHILDREN_no
+# MULTI-TABLES-NEXT: Attributes:
+# MULTI-TABLES-NEXT: - Attribute: DW_AT_low_pc
+# MULTI-TABLES-NEXT: Form: DW_FORM_data4
# MULTI-TABLES-NEXT: - ID: 2
# MULTI-TABLES-NEXT: Table:
# MULTI-TABLES-NEXT: - Code: 0x0000000000000001
@@ -707,6 +713,7 @@ DWARF:
# MULTI-TABLES-NEXT: Attributes:
# MULTI-TABLES-NEXT: - Attribute: DW_AT_low_pc
# MULTI-TABLES-NEXT: Form: DW_FORM_udata
+# MULTI-TABLES-NEXT: - ID: 3
# MULTI-TABLES-NEXT: debug_info:
# MULTI-TABLES-NEXT: - Length: 0x000000000000000C
# MULTI-TABLES-NEXT: Version: 4
@@ -738,7 +745,7 @@ DWARF:
# MULTI-TABLES-NEXT: - Length: 0x000000000000000B
# MULTI-TABLES-NEXT: Version: 4
# MULTI-TABLES-NEXT: AbbrevTableID: 2
-# MULTI-TABLES-NEXT: AbbrOffset: 0x0000000000000010
+# MULTI-TABLES-NEXT: AbbrOffset: 0x0000000000000017
# MULTI-TABLES-NEXT: AddrSize: 8
# MULTI-TABLES-NEXT: Entries:
# MULTI-TABLES-NEXT: - AbbrCode: 0x00000001
@@ -772,7 +779,7 @@ LoadCommands:
- sectname: __debug_abbrev
segname: __DWARF
addr: 0x00
- size: 24
+ size: 32
offset: 528
align: 0
reloff: 0x00000000
@@ -810,6 +817,12 @@ DWARF:
Attributes:
- Attribute: DW_AT_low_pc
Form: DW_FORM_data4
+ - Code: 2
+ Tag: DW_TAG_compile_unit
+ Children: DW_CHILDREN_no
+ Attributes:
+ - Attribute: DW_AT_low_pc
+ Form: DW_FORM_data4
- ID: 1
Table:
- Code: 1
@@ -818,31 +831,28 @@ DWARF:
Attributes:
- Attribute: DW_AT_low_pc
Form: DW_FORM_udata
+ - ID: 3
debug_info:
- Version: 4
AbbrevTableID: 2
- AbbrOffset: 8
Entries:
- AbbrCode: 1
Values:
- Value: 0x1234
- Version: 4
AbbrevTableID: 2
- AbbrOffset: 8
Entries:
- AbbrCode: 1
Values:
- Value: 0x4321
- Version: 4
AbbrevTableID: 0
- AbbrOffset: 0
Entries:
- AbbrCode: 1
Values:
- Value: 0x5678
- Version: 4
AbbrevTableID: 1
- AbbrOffset: 16
Entries:
- AbbrCode: 1
Values:
diff --git a/llvm/tools/obj2yaml/dwarf2yaml.cpp b/llvm/tools/obj2yaml/dwarf2yaml.cpp
index 25733e6..5da5ac1 100644
--- a/llvm/tools/obj2yaml/dwarf2yaml.cpp
+++ b/llvm/tools/obj2yaml/dwarf2yaml.cpp
@@ -26,6 +26,7 @@ void dumpDebugAbbrev(DWARFContext &DCtx, DWARFYAML::Data &Y) {
uint64_t AbbrevTableID = 0;
for (auto AbbrvDeclSet : *AbbrevSetPtr) {
Y.DebugAbbrev.emplace_back();
+ Y.DebugAbbrev.back().ID = AbbrevTableID++;
for (auto AbbrvDecl : AbbrvDeclSet.second) {
DWARFYAML::Abbrev Abbrv;
Abbrv.Code = AbbrvDecl.getCode();
@@ -40,7 +41,6 @@ void dumpDebugAbbrev(DWARFContext &DCtx, DWARFYAML::Data &Y) {
AttAbrv.Value = Attribute.getImplicitConstValue();
Abbrv.Attributes.push_back(AttAbrv);
}
- Y.DebugAbbrev.back().ID = AbbrevTableID++;
Y.DebugAbbrev.back().Table.push_back(Abbrv);
}
}