summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/ELFObjectWriter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-04-23 14:42:32 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-04-23 14:42:32 +0000
commit6a4a0799a526542b446139e1be7215477aea2a01 (patch)
tree5b9dee14acc80f1d4f834741bbfe35425cadfd78 /llvm/lib/MC/ELFObjectWriter.cpp
parent47bff44d3dab2fa52d06592e3b2f0b73084e0f5a (diff)
downloadbcm5719-llvm-6a4a0799a526542b446139e1be7215477aea2a01.tar.gz
bcm5719-llvm-6a4a0799a526542b446139e1be7215477aea2a01.zip
Centralize handling of ELF_Other_ThumbFunc.
No functionality change. llvm-svn: 206988
Diffstat (limited to 'llvm/lib/MC/ELFObjectWriter.cpp')
-rw-r--r--llvm/lib/MC/ELFObjectWriter.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/MC/ELFObjectWriter.cpp b/llvm/lib/MC/ELFObjectWriter.cpp
index 636d449e207..f11ec79210a 100644
--- a/llvm/lib/MC/ELFObjectWriter.cpp
+++ b/llvm/lib/MC/ELFObjectWriter.cpp
@@ -513,7 +513,8 @@ uint64_t ELFObjectWriter::SymbolValue(MCSymbolData &OrigData,
}
}
- if (Data && Data->getFlags() & ELF_Other_ThumbFunc)
+ if ((Data && Data->getFlags() & ELF_Other_ThumbFunc) ||
+ OrigData.getFlags() & ELF_Other_ThumbFunc)
Res |= 1;
if (!Symbol || !Symbol->isInSection())
@@ -644,8 +645,6 @@ void ELFObjectWriter::WriteSymbol(SymbolTableWriter &Writer, ELFSymbolData &MSD,
Other |= Visibility;
uint64_t Value = SymbolValue(OrigData, Layout);
- if (OrigData.getFlags() & ELF_Other_ThumbFunc)
- Value |= 1;
uint64_t Size = 0;
const MCExpr *ESize = OrigData.getSize();
OpenPOWER on IntegriCloud