aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MachObjectWriter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-12-07 05:57:28 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-12-07 05:57:28 +0000
commitbdbe5a712dd0626bb8bb81db27bb11f0aa06c609 (patch)
tree7e0160d4dd85452abb1887f027ce2dba22bb1797 /llvm/lib/MC/MachObjectWriter.cpp
parent98c9ae376168ad2a153a6e6942f59344f4b03740 (diff)
downloadllvm-bdbe5a712dd0626bb8bb81db27bb11f0aa06c609.zip
llvm-bdbe5a712dd0626bb8bb81db27bb11f0aa06c609.tar.gz
llvm-bdbe5a712dd0626bb8bb81db27bb11f0aa06c609.tar.bz2
Fix relocations with weak definitions.
llvm-svn: 121114
Diffstat (limited to 'llvm/lib/MC/MachObjectWriter.cpp')
-rw-r--r--llvm/lib/MC/MachObjectWriter.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/MC/MachObjectWriter.cpp b/llvm/lib/MC/MachObjectWriter.cpp
index 6e0c4d2..d31ecef 100644
--- a/llvm/lib/MC/MachObjectWriter.cpp
+++ b/llvm/lib/MC/MachObjectWriter.cpp
@@ -893,7 +893,7 @@ public:
// compensate for the addend of the symbol address, if it was
// undefined. This occurs with weak definitions, for example.
if (!SD->Symbol->isUndefined())
- FixedValue -= getSymbolAddress(SD, Layout);
+ FixedValue -= Layout.getSymbolOffset(SD);
} else {
// The index is the section ordinal (1-based).
Index = SD->getFragment()->getParent()->getOrdinal() + 1;