aboutsummaryrefslogtreecommitdiff
path: root/lib/MC/ELFObjectWriter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-09-23 17:25:18 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-09-23 17:25:18 +0000
commitb142bef30b2e2ef0c978f5f3041f1d4a429eb9b2 (patch)
tree21ff97626b7a0206390a1592819f3993f65b1c51 /lib/MC/ELFObjectWriter.cpp
parentedf017487ffdd52cd42f3129c0e6b78fffb31e89 (diff)
Represent relocations against local symbols as relocations against the section
they are in. Both ways should be equivalent, but gas produces relocations against the section. Roman wrote the patch, I added the test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114667 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/ELFObjectWriter.cpp')
-rw-r--r--lib/MC/ELFObjectWriter.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/MC/ELFObjectWriter.cpp b/lib/MC/ELFObjectWriter.cpp
index 513a509b69..7960a07499 100644
--- a/lib/MC/ELFObjectWriter.cpp
+++ b/lib/MC/ELFObjectWriter.cpp
@@ -502,7 +502,7 @@ void ELFObjectWriterImpl::RecordRelocation(const MCAssembler &Asm,
}
if (Base) {
- if (F && (!Symbol->isInSection() || SD.isCommon()) && !SD.isExternal()) {
+ if (F && !SD.isExternal()) {
Index = F->getParent()->getOrdinal() + LocalSymbolData.size() + 1;
Value += Layout.getSymbolAddress(&SD);
} else