summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Linker
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-12-08 03:31:14 +0000
committerChris Lattner <sabre@nondot.org>2004-12-08 03:31:14 +0000
commitdb38fe94aebf931a7abae3210529b285325881cf (patch)
treebb3d1cbbfd1871832e7627d989006cb40f289a11 /llvm/lib/Linker
parent79a993ea0d0b4d51871c718d30a5fed4ed688461 (diff)
downloadbcm5719-llvm-db38fe94aebf931a7abae3210529b285325881cf.tar.gz
bcm5719-llvm-db38fe94aebf931a7abae3210529b285325881cf.zip
Revert this disgusting hack, John has a much nicer solution
llvm-svn: 18611
Diffstat (limited to 'llvm/lib/Linker')
-rw-r--r--llvm/lib/Linker/LinkModules.cpp23
1 files changed, 0 insertions, 23 deletions
diff --git a/llvm/lib/Linker/LinkModules.cpp b/llvm/lib/Linker/LinkModules.cpp
index 02d2c186df0..d58acbec81c 100644
--- a/llvm/lib/Linker/LinkModules.cpp
+++ b/llvm/lib/Linker/LinkModules.cpp
@@ -425,20 +425,6 @@ static bool GetLinkageResult(GlobalValue *Dest, GlobalValue *Src,
return false;
}
-// Gross hack, see call sites.
-static void CoutHack(GlobalVariable *GV1, GlobalVariable *GV2) {
- const Type *GV1Ty = GV1->getType()->getElementType();
- const Type *GV2Ty = GV2->getType()->getElementType();
-
- if (GV1->isExternal() && isa<StructType>(GV1Ty) &&
- GV2->hasInitializer() && GV2->hasExternalLinkage() &&
- GV2->getInitializer()->isNullValue() && isa<ArrayType>(GV2Ty) &&
- cast<ArrayType>(GV2Ty)->getElementType() == Type::SByteTy) {
- GV1->setInitializer(Constant::getNullValue(GV1Ty));
- GV2->setInitializer(0);
- }
-}
-
// LinkGlobals - Loop through the global variables in the src module and merge
// them into the dest module.
static bool LinkGlobals(Module *Dest, Module *Src,
@@ -473,15 +459,6 @@ static bool LinkGlobals(Module *Dest, Module *Src,
assert(SGV->hasInitializer() || SGV->hasExternalLinkage() &&
"Global must either be external or have an initializer!");
- // This is a gross hack to handle cin/cout until PR400 is implemented. If
- // we are linking an external struct against a zero-initialized array of
- // sbytes, move the initializer from the array to the struct so we keep the
- // struct type.
- if (DGV) {
- CoutHack(DGV, SGV);
- CoutHack(SGV, DGV);
- }
-
GlobalValue::LinkageTypes NewLinkage;
bool LinkFromSrc;
if (GetLinkageResult(DGV, SGV, NewLinkage, LinkFromSrc, Err))
OpenPOWER on IntegriCloud