diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2017-09-28 15:57:50 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2017-09-28 15:57:50 +0000 |
commit | 35fdaa94f7fae76bb8dc905e16f2a4fcef8ed34e (patch) | |
tree | 2e5dedbb3ca26507e92109dd61f7c8cfc7a82c25 /llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | |
parent | 2ff339303ee04f1a454fe521e29f540cc09a7f63 (diff) | |
download | bcm5719-llvm-35fdaa94f7fae76bb8dc905e16f2a4fcef8ed34e.tar.gz bcm5719-llvm-35fdaa94f7fae76bb8dc905e16f2a4fcef8ed34e.zip |
[dwarfdump] Verify that CUs have a unit DIE.
This patch adds a check to the DWARF verifier to detect CUs without a
unit DIE.
Differential revision: https://reviews.llvm.org/D38363
llvm-svn: 314426
Diffstat (limited to 'llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp')
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp b/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp index 096d5ff8c33..eadb982ba72 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp @@ -179,9 +179,14 @@ bool DWARFVerifier::verifyUnitContents(DWARFUnit Unit) { } } - DieRangeInfo RI; - DWARFDie Die = Unit.getUnitDIE(/* ExtractUnitDIEOnly = */ false); - NumUnitErrors += verifyDieRanges(Die, RI); + if (DWARFDie Die = Unit.getUnitDIE(/* ExtractUnitDIEOnly = */ false)) { + DieRangeInfo RI; + NumUnitErrors += verifyDieRanges(Die, RI); + } else { + OS << "error: Compilation unit without unit DIE.\n"; + NumUnitErrors++; + } + return NumUnitErrors == 0; } |