summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2008-05-23 00:15:10 +0000
committerDale Johannesen <dalej@apple.com>2008-05-23 00:15:10 +0000
commited1ec3aa6b646a47943fdbdf6148c342f0b5a31f (patch)
treed1677334c6ae59d86a08316eebefe433e0dfe931 /tools
parent31e5bdccf29f0ce6172f0f0bbb43a9a736b1ef0c (diff)
downloadllvm-ed1ec3aa6b646a47943fdbdf6148c342f0b5a31f.tar.gz
llvm-ed1ec3aa6b646a47943fdbdf6148c342f0b5a31f.tar.bz2
llvm-ed1ec3aa6b646a47943fdbdf6148c342f0b5a31f.tar.xz
Make LTO expect common and weak to be represented differently.
Reading .bc files from before that change will no longer work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51457 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r--tools/lto2/LTOModule.cpp12
1 files changed, 1 insertions, 11 deletions
diff --git a/tools/lto2/LTOModule.cpp b/tools/lto2/LTOModule.cpp
index 2fd29be272..c4bee714c6 100644
--- a/tools/lto2/LTOModule.cpp
+++ b/tools/lto2/LTOModule.cpp
@@ -191,17 +191,7 @@ void LTOModule::addDefinedSymbol(GlobalValue* def, Mangler &mangler,
// set definition part
if ( def->hasWeakLinkage() || def->hasLinkOnceLinkage() ) {
- // lvm bitcode does not differenciate between weak def data
- // and tentative definitions!
- // HACK HACK HACK
- // C++ does not use tentative definitions, but does use weak symbols
- // so guess that anything that looks like a C++ symbol is weak and others
- // are tentative definitions
- if ( (strncmp(symbolName, "__Z", 3) == 0) )
- attr |= LTO_SYMBOL_DEFINITION_WEAK;
- else {
- attr |= LTO_SYMBOL_DEFINITION_TENTATIVE;
- }
+ attr |= LTO_SYMBOL_DEFINITION_WEAK;
}
else if ( def->hasCommonLinkage()) {
attr |= LTO_SYMBOL_DEFINITION_TENTATIVE;