[llvm] r361807 - Fix some llvm-readelf tests after r361633

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Tue May 28 04:24:20 PDT 2019


Author: hans
Date: Tue May 28 04:24:20 2019
New Revision: 361807

URL: http://llvm.org/viewvc/llvm-project?rev=361807&view=rev
Log:
Fix some llvm-readelf tests after r361633

They were failing on 32-bit Windows. In the cases where I've changed
test expectations, I've checked that they match the output of GNU
readelf.

Modified:
    llvm/trunk/test/tools/llvm-readobj/mips-got.test
    llvm/trunk/test/tools/llvm-readobj/mips-plt.test
    llvm/trunk/tools/llvm-readobj/ELFDumper.cpp

Modified: llvm/trunk/test/tools/llvm-readobj/mips-got.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/mips-got.test?rev=361807&r1=361806&r2=361807&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/mips-got.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/mips-got.test Tue May 28 04:24:20 2019
@@ -405,7 +405,7 @@ GNU-GOT-EXE:      PLT GOT:
 GNU-GOT-EXE:       Reserved entries:
 GNU-GOT-EXE-NEXT:    Address  Initial Purpose
 GNU-GOT-EXE-NEXT:   00410854 00000000 PLT lazy resolver
-GNU-GOT-EXE-NEXT:   00410894 80000000 Module pointer
+GNU-GOT-EXE-NEXT:   00410858 00000000 Module pointer
 
 GNU-GOT-EXE:       Entries:
 GNU-GOT-EXE-NEXT:    Address  Initial Sym.Val. Type    Ndx Name

Modified: llvm/trunk/test/tools/llvm-readobj/mips-plt.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/mips-plt.test?rev=361807&r1=361806&r2=361807&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/mips-plt.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/mips-plt.test Tue May 28 04:24:20 2019
@@ -56,7 +56,7 @@ GNU-NEXT: PLT GOT:
 GNU:       Reserved entries:
 GNU-NEXT:    Address  Initial Purpose
 GNU-NEXT:   00410814 00000000 PLT lazy resolver
-GNU-NEXT:   00410854 80000000 Module pointer
+GNU-NEXT:   00410818 00000000 Module pointer
 
 GNU:       Entries:
 GNU-NEXT:    Address  Initial Sym.Val. Type    Ndx Name

Modified: llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-readobj/ELFDumper.cpp?rev=361807&r1=361806&r2=361807&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-readobj/ELFDumper.cpp (original)
+++ llvm/trunk/tools/llvm-readobj/ELFDumper.cpp Tue May 28 04:24:20 2019
@@ -3346,9 +3346,8 @@ template <class ELFT> void GNUStyle<ELFT
     OS << "  Tag        Type                 Name/Value\n";
   for (auto Entry : Table) {
     uintX_t Tag = Entry.getTag();
-    std::string TypeString = getTypeString(Obj->getHeader()->e_machine, Tag);
-    OS << format("  0x%0*x %-20s ", Is64 ? 16 : 8, Tag,
-                 ("(" + TypeString + ")").c_str());
+    std::string TypeString = std::string("(") + getTypeString(Obj->getHeader()->e_machine, Tag) + ")";
+    OS << "  " << format_hex(Tag, Is64 ? 18 : 10) << format(" %-20s ", TypeString.c_str());
     this->dumper()->printDynamicEntry(OS, Tag, Entry.getVal());
     OS << "\n";
   }
@@ -4134,7 +4133,7 @@ void GNUStyle<ELFT>::printMipsPLT(const
   size_t Bias = ELFT::Is64Bits ? 8 : 0;
   auto PrintEntry = [&](const Elf_Addr *E, StringRef Purpose) {
     OS.PadToColumn(2);
-    OS << format_hex_no_prefix(Parser.getGotAddress(E), 8 + Bias);
+    OS << format_hex_no_prefix(Parser.getPltAddress(E), 8 + Bias);
     OS.PadToColumn(11 + Bias);
     OS << format_hex_no_prefix(*E, 8 + Bias);
     OS.PadToColumn(20 + 2 * Bias);
@@ -4147,7 +4146,7 @@ void GNUStyle<ELFT>::printMipsPLT(const
   OS << "   Address  Initial Purpose\n";
   PrintEntry(Parser.getPltLazyResolver(), "PLT lazy resolver");
   if (Parser.getPltModulePointer())
-    PrintEntry(Parser.getGotModulePointer(), "Module pointer");
+    PrintEntry(Parser.getPltModulePointer(), "Module pointer");
 
   if (!Parser.getPltEntries().empty()) {
     OS << "\n";
@@ -4159,7 +4158,7 @@ void GNUStyle<ELFT>::printMipsPLT(const
           Sym, this->dumper()->getDynamicStringTable(), false);
 
       OS.PadToColumn(2);
-      OS << to_string(format_hex_no_prefix(Parser.getGotAddress(&E), 8 + Bias));
+      OS << to_string(format_hex_no_prefix(Parser.getPltAddress(&E), 8 + Bias));
       OS.PadToColumn(11 + Bias);
       OS << to_string(format_hex_no_prefix(E, 8 + Bias));
       OS.PadToColumn(20 + 2 * Bias);
@@ -4919,6 +4918,7 @@ void LLVMStyle<ELFT>::printELFLinkerOpti
 template <class ELFT>
 void LLVMStyle<ELFT>::printMipsGOT(const MipsGOTParser<ELFT> &Parser) {
   auto PrintEntry = [&](const Elf_Addr *E) {
+		// XXX: here?
     W.printHex("Address", Parser.getGotAddress(E));
     W.printNumber("Access", Parser.getGotOffset(E));
     W.printHex("Initial", *E);
@@ -4983,6 +4983,7 @@ void LLVMStyle<ELFT>::printMipsGOT(const
 template <class ELFT>
 void LLVMStyle<ELFT>::printMipsPLT(const MipsGOTParser<ELFT> &Parser) {
   auto PrintEntry = [&](const Elf_Addr *E) {
+		// XXX: here? no.
     W.printHex("Address", Parser.getPltAddress(E));
     W.printHex("Initial", *E);
   };




More information about the llvm-commits mailing list