diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/Object/ELF.h | 5 | ||||
| -rw-r--r-- | llvm/tools/llvm-readobj/ELFDumper.cpp | 7 |
2 files changed, 5 insertions, 7 deletions
diff --git a/llvm/include/llvm/Object/ELF.h b/llvm/include/llvm/Object/ELF.h index 0774b980104..c24b6310465 100644 --- a/llvm/include/llvm/Object/ELF.h +++ b/llvm/include/llvm/Object/ELF.h @@ -357,11 +357,6 @@ Expected<ELFFile<ELFT>> ELFFile<ELFT>::create(StringRef Object) { } template <class ELFT> -bool compareAddr(uint64_t VAddr, const Elf_Phdr_Impl<ELFT> *Phdr) { - return VAddr < Phdr->p_vaddr; -} - -template <class ELFT> Expected<typename ELFT::ShdrRange> ELFFile<ELFT>::sections() const { const uintX_t SectionTableOffset = getHeader()->e_shoff; if (SectionTableOffset == 0) diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp index 0224df8493f..9f56a28d934 100644 --- a/llvm/tools/llvm-readobj/ELFDumper.cpp +++ b/llvm/tools/llvm-readobj/ELFDumper.cpp @@ -1356,8 +1356,11 @@ template <typename ELFT> void ELFDumper<ELFT>::parseDynamicTable( ArrayRef<const Elf_Phdr *> LoadSegments) { auto toMappedAddr = [&](uint64_t VAddr) -> const uint8_t * { - const Elf_Phdr *const *I = std::upper_bound( - LoadSegments.begin(), LoadSegments.end(), VAddr, compareAddr<ELFT>); + const Elf_Phdr *const *I = + std::upper_bound(LoadSegments.begin(), LoadSegments.end(), VAddr, + [](uint64_t VAddr, const Elf_Phdr_Impl<ELFT> *Phdr) { + return VAddr < Phdr->p_vaddr; + }); if (I == LoadSegments.begin()) report_fatal_error("Virtual address is not in any segment"); --I; |

