diff options
| author | Chris Lattner <sabre@nondot.org> | 2004-12-08 03:31:14 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2004-12-08 03:31:14 +0000 |
| commit | db38fe94aebf931a7abae3210529b285325881cf (patch) | |
| tree | bb3d1cbbfd1871832e7627d989006cb40f289a11 /llvm/lib/Linker | |
| parent | 79a993ea0d0b4d51871c718d30a5fed4ed688461 (diff) | |
| download | bcm5719-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.cpp | 23 |
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)) |

