diff options
author | Paul Semel <semelpaul@gmail.com> | 2019-04-03 17:13:45 +0000 |
---|---|---|
committer | Paul Semel <semelpaul@gmail.com> | 2019-04-03 17:13:45 +0000 |
commit | 0c27bc2e1fe3bda1be12063bdc65ca5a9ca398c6 (patch) | |
tree | f63802afa33bbf004853753251f6b9f6e04f6a05 /llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | |
parent | 1de15f6f336dba6e26c18c224d1b53ba617f57f0 (diff) | |
download | bcm5719-llvm-0c27bc2e1fe3bda1be12063bdc65ca5a9ca398c6.tar.gz bcm5719-llvm-0c27bc2e1fe3bda1be12063bdc65ca5a9ca398c6.zip |
[DWARF] check whether the DIE is valid before querying for information
Differential Revision: https://reviews.llvm.org/D60147
llvm-svn: 357607
Diffstat (limited to 'llvm/lib/DebugInfo/DWARF/DWARFContext.cpp')
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp index 789874f5cbd..720fadb0dc7 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp @@ -925,6 +925,9 @@ DWARFContext::DIEsForAddress DWARFContext::getDIEsForAddress(uint64_t Address) { DWARFDie DIE = Worklist.back(); Worklist.pop_back(); + if (!DIE.isValid()) + continue; + if (DIE.getTag() == DW_TAG_lexical_block && DIE.addressRangeContainsAddress(Address)) { Result.BlockDIE = DIE; |