Use getSymbolOffset on the COFF writer.
authorRafael Espindola <rafael.espindola@gmail.com>
Mon, 6 Dec 2010 03:24:04 +0000 (03:24 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Mon, 6 Dec 2010 03:24:04 +0000 (03:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120979 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/WinCOFFObjectWriter.cpp

index 4aabbc4862b265a16133459f0396aa21a66df5ce..1bfd3a4fd7a9f788d6e1e47ca1dd4353811e0c7b 100644 (file)
@@ -661,7 +661,7 @@ void WinCOFFObjectWriter::RecordRelocation(const MCAssembler &Asm,
     const MCSymbol *B = &Target.getSymB()->getSymbol();
     MCSymbolData &B_SD = Asm.getSymbolData(*B);
 
-    FixedValue = Layout.getSymbolAddress(&A_SD) - Layout.getSymbolAddress(&B_SD);
+    FixedValue = Layout.getSymbolOffset(&A_SD) - Layout.getSymbolOffset(&B_SD);
 
     // In the case where we have SymbA and SymB, we just need to store the delta
     // between the two symbols.  Update FixedValue to account for the delta, and