summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-08-05 05:25:18 +0000
committerChris Lattner <sabre@nondot.org>2009-08-05 05:25:18 +0000
commitc58e5699be58c3e68c7bdf312c381789becd6df2 (patch)
tree37a8f34155e2260591f5f9703aa9e5d30dcd8fc6 /clang/lib/CodeGen
parentd055488c7210469be370fa8b4d3102bb9854c784 (diff)
downloadbcm5719-llvm-c58e5699be58c3e68c7bdf312c381789becd6df2.tar.gz
bcm5719-llvm-c58e5699be58c3e68c7bdf312c381789becd6df2.zip
cgobjcgnu was making invalid common globals.
llvm-svn: 78161
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGObjCGNU.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGObjCGNU.cpp b/clang/lib/CodeGen/CGObjCGNU.cpp
index 139d9ae8a20..e8c3e2ffef8 100644
--- a/clang/lib/CodeGen/CGObjCGNU.cpp
+++ b/clang/lib/CodeGen/CGObjCGNU.cpp
@@ -189,7 +189,7 @@ void CGObjCGNU::EmitClassRef(const std::string &className) {
llvm::GlobalValue::ExternalLinkage, 0, symbolName);
}
new llvm::GlobalVariable(TheModule, ClassSymbol->getType(), true,
- llvm::GlobalValue::CommonLinkage, ClassSymbol, symbolRef);
+ llvm::GlobalValue::WeakAnyLinkage, ClassSymbol, symbolRef);
}
static std::string SymbolNameForClass(const std::string &ClassName) {
@@ -1580,7 +1580,7 @@ llvm::GlobalVariable *CGObjCGNU::ObjCIvarOffsetVariable(
llvm::ConstantInt *OffsetGuess =
llvm::ConstantInt::get(LongTy, Offset, "ivar");
IvarOffsetGV = new llvm::GlobalVariable(TheModule, LongTy, false,
- llvm::GlobalValue::CommonLinkage, OffsetGuess, Name);
+ llvm::GlobalValue::WeakAnyLinkage, OffsetGuess, Name);
}
return IvarOffsetGV;
}
OpenPOWER on IntegriCloud