[llvm-commits] [llvm] r146273 - in /llvm/trunk: lib/MC/ELFObjectWriter.cpp test/MC/ELF/relocation-386.s

Rafael Espindola rafael.espindola at gmail.com
Fri Dec 9 11:57:30 PST 2011


Author: rafael
Date: Fri Dec  9 13:57:29 2011
New Revision: 146273

URL: http://llvm.org/viewvc/llvm-project?rev=146273&view=rev
Log:
Handle reloc_signed_4byte in here. Not doing so was a regression from my
previous commit. It is strange that we see it in 32 bits. We already
have a fixme about it.

Modified:
    llvm/trunk/lib/MC/ELFObjectWriter.cpp
    llvm/trunk/test/MC/ELF/relocation-386.s

Modified: llvm/trunk/lib/MC/ELFObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/ELFObjectWriter.cpp?rev=146273&r1=146272&r2=146273&view=diff
==============================================================================
--- llvm/trunk/lib/MC/ELFObjectWriter.cpp (original)
+++ llvm/trunk/lib/MC/ELFObjectWriter.cpp Fri Dec  9 13:57:29 2011
@@ -1749,6 +1749,7 @@
         Type = ELF::R_386_GOTPC;
         break;
 
+      case X86::reloc_signed_4byte:
       case FK_PCRel_4:
       case FK_Data_4:
         switch (Modifier) {

Modified: llvm/trunk/test/MC/ELF/relocation-386.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/relocation-386.s?rev=146273&r1=146272&r2=146273&view=diff
==============================================================================
--- llvm/trunk/test/MC/ELF/relocation-386.s (original)
+++ llvm/trunk/test/MC/ELF/relocation-386.s Fri Dec  9 13:57:29 2011
@@ -165,6 +165,13 @@
 // CHECK-NEXT: (('r_offset', 0x00000094)
 // CHECK-NEXT:  ('r_sym', 0x00000b)
 // CHECK-NEXT:  ('r_type', 0x0a)
+// CHECK-NEXT: ),
+// Relocation 26 (und_symbol-bar2) is of type R_386_PC32
+// CHECK-NEXT: Relocation 26
+// CHECK-NEXT: (('r_offset', 0x0000009a)
+// CHECK-NEXT:  ('r_sym', 0x00000e)
+// CHECK-NEXT:  ('r_type', 0x02)
+// CHECK-NEXT: ),
 
 // Section 4 is bss
 // CHECK:      # Section 4
@@ -231,6 +238,7 @@
         pushl $bar
         addl foo at GOTTPOFF(%edx), %eax
         subl    _GLOBAL_OFFSET_TABLE_-bar2, %ebx
+        leal und_symbol-bar2(%edx),%ecx
 
         .section        zedsec,"awT", at progbits
 zed:





More information about the llvm-commits mailing list