diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp --- a/llvm/tools/llvm-readobj/ELFDumper.cpp +++ b/llvm/tools/llvm-readobj/ELFDumper.cpp @@ -221,7 +221,7 @@ void printArchSpecificInfo() override; void printStackMap() const override; void printMemtag() override; - ArrayRef getMemtagGlobalsSectionContents(uintptr_t ExpectedAddr); + ArrayRef getMemtagGlobalsSectionContents(uint64_t ExpectedAddr); // Hash histogram shows statistics of how efficient the hash was for the // dynamic symbol table. The table shows the number of hash buckets for @@ -5971,7 +5971,7 @@ template ArrayRef -ELFDumper::getMemtagGlobalsSectionContents(uintptr_t ExpectedAddr) { +ELFDumper::getMemtagGlobalsSectionContents(uint64_t ExpectedAddr) { for (const typename ELFT::Shdr &Sec : cantFail(Obj.sections())) { if (Sec.sh_type != SHT_AARCH64_MEMTAG_GLOBALS_DYNAMIC) continue; @@ -6005,7 +6005,7 @@ if (Obj.getHeader().e_machine != EM_AARCH64) return; std::vector> DynamicEntries; size_t MemtagGlobalsSz = 0; - uintptr_t MemtagGlobals = 0; + uint64_t MemtagGlobals = 0; for (const typename ELFT::Dyn &Entry : dynamic_table()) { uintX_t Tag = Entry.getTag(); switch (Tag) {