diff options
Diffstat (limited to 'llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp')
-rw-r--r-- | llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp index 0d4e1f497ff..863bbfb045e 100644 --- a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp +++ b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp @@ -370,21 +370,6 @@ void FileAnalysis::parseSectionContents(ArrayRef<uint8_t> SectionBytes, InstrMeta.InstructionSize = InstructionSize; InstrMeta.Valid = ValidInstruction; - // Check if this instruction exists in the range of the DWARF metadata. - if (!IgnoreDWARFFlag) { - auto LineInfo = - Symbolizer->symbolizeCode(Object->getFileName(), VMAddress); - if (!LineInfo) { - handleAllErrors(LineInfo.takeError(), [](const ErrorInfoBase &E) { - errs() << "Symbolizer failed to get line: " << E.message() << "\n"; - }); - continue; - } - - if (LineInfo->FileName == "<invalid>") - continue; - } - addInstruction(InstrMeta); if (!ValidInstruction) @@ -406,6 +391,21 @@ void FileAnalysis::parseSectionContents(ArrayRef<uint8_t> SectionBytes, if (!usesRegisterOperand(InstrMeta)) continue; + // Check if this instruction exists in the range of the DWARF metadata. + if (!IgnoreDWARFFlag) { + auto LineInfo = + Symbolizer->symbolizeCode(Object->getFileName(), VMAddress); + if (!LineInfo) { + handleAllErrors(LineInfo.takeError(), [](const ErrorInfoBase &E) { + errs() << "Symbolizer failed to get line: " << E.message() << "\n"; + }); + continue; + } + + if (LineInfo->FileName == "<invalid>") + continue; + } + IndirectInstructions.insert(VMAddress); } } |