From: Fangrui Song Date: Sat, 20 Apr 2019 07:48:41 +0000 (+0000) Subject: [llvm-objdump] Fix End in disassemblyObject after rL358806 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8eaf2a6f006a7a86be9ad437f76230efb7ba81e0;p=llvm [llvm-objdump] Fix End in disassemblyObject after rL358806 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358809 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvm-objdump/llvm-objdump.cpp b/tools/llvm-objdump/llvm-objdump.cpp index 37b17cb2f4a..69a97853d2b 100644 --- a/tools/llvm-objdump/llvm-objdump.cpp +++ b/tools/llvm-objdump/llvm-objdump.cpp @@ -1153,9 +1153,9 @@ static void disassembleObject(const Target *TheTarget, const ObjectFile *Obj, // The end is the section end, the beginning of the next symbol, or // --stop-address. - uint64_t End = std::min( - SI + 1 < SE ? std::get<0>(Symbols[SI + 1]) : SectionAddr + SectSize, - StopAddress); + uint64_t End = std::min(SectionAddr + SectSize, StopAddress); + if (SI + 1 < SE) + End = std::min(End, std::get<0>(Symbols[SI + 1])); if (Start >= End || End <= StartAddress) continue; Start -= SectionAddr;