summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/test/tools/llvm-readobj/mips-got.test10
-rw-r--r--llvm/tools/llvm-readobj/ELFDumper.cpp16
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(
OpenPOWER on IntegriCloud