diff options
| -rw-r--r-- | llvm/test/tools/llvm-readobj/mips-got.test | 10 | ||||
| -rw-r--r-- | llvm/tools/llvm-readobj/ELFDumper.cpp | 16 |
2 files changed, 18 insertions, 8 deletions
diff --git a/llvm/test/tools/llvm-readobj/mips-got.test b/llvm/test/tools/llvm-readobj/mips-got.test index 021dcfb116d..b3424dbc6f1 100644 --- a/llvm/test/tools/llvm-readobj/mips-got.test +++ b/llvm/test/tools/llvm-readobj/mips-got.test @@ -14,15 +14,15 @@ RUN: FileCheck %s -check-prefix GOT-STATIC RUN: not llvm-readelf --mips-plt-got %p/Inputs/relocs.obj.elf-mips 2>&1 | \ RUN: FileCheck %s -check-prefix GNU-GOT-OBJ RUN: llvm-readelf --mips-plt-got %p/Inputs/dynamic-table-exe.mips | \ -RUN: FileCheck %s -check-prefix GNU-GOT-EXE +RUN: FileCheck %s --strict-whitespace -check-prefix GNU-GOT-EXE RUN: llvm-readelf --mips-plt-got %p/Inputs/dynamic-table-so.mips | \ -RUN: FileCheck %s -check-prefix GNU-GOT-SO +RUN: FileCheck %s --strict-whitespace -check-prefix GNU-GOT-SO RUN: llvm-readelf --mips-plt-got %p/Inputs/got-tls.so.elf-mips64el | \ -RUN: FileCheck %s -check-prefix GNU-GOT-TLS +RUN: FileCheck %s --strict-whitespace -check-prefix GNU-GOT-TLS RUN: llvm-readelf --mips-plt-got %p/Inputs/got-empty.exe.mipsel | \ -RUN: FileCheck %s -check-prefix GNU-GOT-EMPTY +RUN: FileCheck %s --strict-whitespace -check-prefix GNU-GOT-EMPTY RUN: llvm-readelf --mips-plt-got %p/Inputs/got-static.exe.mips | \ -RUN: FileCheck %s -check-prefix GNU-GOT-STATIC +RUN: FileCheck %s --strict-whitespace -check-prefix GNU-GOT-STATIC GOT-OBJ: error: Cannot find .got section diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp index 65abdbd6109..159e300de30 100644 --- a/llvm/tools/llvm-readobj/ELFDumper.cpp +++ b/llvm/tools/llvm-readobj/ELFDumper.cpp @@ -4061,7 +4061,10 @@ void GNUStyle<ELFT>::printMipsGOT(const MipsGOTParser<ELFT> &Parser) { << format_hex_no_prefix(Parser.getGp(), 8 + Bias) << "\n\n"; OS << " Reserved entries:\n"; - OS << " Address Access Initial Purpose\n"; + if (ELFT::Is64Bits) + OS << " Address Access Initial Purpose\n"; + else + OS << " Address Access Initial Purpose\n"; PrintEntry(Parser.getGotLazyResolver(), "Lazy resolver"); if (Parser.getGotModulePointer()) PrintEntry(Parser.getGotModulePointer(), "Module pointer (GNU extension)"); @@ -4069,7 +4072,10 @@ void GNUStyle<ELFT>::printMipsGOT(const MipsGOTParser<ELFT> &Parser) { if (!Parser.getLocalEntries().empty()) { OS << "\n"; OS << " Local entries:\n"; - OS << " Address Access Initial\n"; + if (ELFT::Is64Bits) + OS << " Address Access Initial\n"; + else + OS << " Address Access Initial\n"; for (auto &E : Parser.getLocalEntries()) PrintEntry(&E, ""); } @@ -4080,7 +4086,11 @@ void GNUStyle<ELFT>::printMipsGOT(const MipsGOTParser<ELFT> &Parser) { if (!Parser.getGlobalEntries().empty()) { OS << "\n"; OS << " Global entries:\n"; - OS << " Address Access Initial Sym.Val. Type Ndx Name\n"; + if (ELFT::Is64Bits) + OS << " Address Access Initial Sym.Val." + << " Type Ndx Name\n"; + else + OS << " Address Access Initial Sym.Val. Type Ndx Name\n"; for (auto &E : Parser.getGlobalEntries()) { const Elf_Sym *Sym = Parser.getGotSym(&E); std::string SymName = this->dumper()->getFullSymbolName( |

