[llvm] r220016 - Add a test that would have found the bug in r219829.

Rafael Espindola rafael.espindola at gmail.com
Thu Oct 16 18:34:23 PDT 2014


Author: rafael
Date: Thu Oct 16 20:34:23 2014
New Revision: 220016

URL: http://llvm.org/viewvc/llvm-project?rev=220016&view=rev
Log:
Add a test that would have found the bug in r219829.

Added:
    llvm/trunk/test/MC/ELF/reloc-same-name-section.s
Modified:
    llvm/trunk/tools/llvm-readobj/ELFDumper.cpp

Added: llvm/trunk/test/MC/ELF/reloc-same-name-section.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/reloc-same-name-section.s?rev=220016&view=auto
==============================================================================
--- llvm/trunk/test/MC/ELF/reloc-same-name-section.s (added)
+++ llvm/trunk/test/MC/ELF/reloc-same-name-section.s Thu Oct 16 20:34:23 2014
@@ -0,0 +1,31 @@
+// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux %s -o - | llvm-readobj -r --expand-relocs | FileCheck %s
+
+// test that we produce one relocation against each section.
+
+// CHECK:      Relocations [
+// CHECK-NEXT:   Section {{.*}} {
+// CHECK-NEXT:     Relocation {
+// CHECK-NEXT:       Offset:
+// CHECK-NEXT:       Type:
+// CHECK-NEXT:       Symbol:  .foo (7)
+// CHECK-NEXT:       Addend:
+// CHECK-NEXT:     }
+// CHECK-NEXT:     Relocation {
+// CHECK-NEXT:       Offset:
+// CHECK-NEXT:       Type:
+// CHECK-NEXT:       Symbol:  .foo (8)
+// CHECK-NEXT:       Addend:
+// CHECK-NEXT:     }
+// CHECK-NEXT:   }
+// CHECK-NEXT: ]
+
+	.section	.foo,"aG", at progbits,v,comdat
+f:
+
+	.section	.foo,"a", at progbits
+g:
+
+
+	.section	.bar
+	.quad	f
+	.quad	g

Modified: llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-readobj/ELFDumper.cpp?rev=220016&r1=220015&r2=220016&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-readobj/ELFDumper.cpp (original)
+++ llvm/trunk/tools/llvm-readobj/ELFDumper.cpp Thu Oct 16 20:34:23 2014
@@ -676,7 +676,8 @@ void ELFDumper<ELFT>::printRelocation(co
     DictScope Group(W, "Relocation");
     W.printHex("Offset", Rel.r_offset);
     W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL()));
-    W.printString("Symbol", SymbolName.size() > 0 ? SymbolName : "-");
+    W.printNumber("Symbol", SymbolName.size() > 0 ? SymbolName : "-",
+                  Rel.getSymbol(Obj->isMips64EL()));
     W.printHex("Addend", Rel.r_addend);
   } else {
     raw_ostream& OS = W.startLine();





More information about the llvm-commits mailing list