aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/Linker/LinkModules.cpp25
-rw-r--r--test/Linker/link-type-names.ll9
2 files changed, 0 insertions, 34 deletions
diff --git a/lib/Linker/LinkModules.cpp b/lib/Linker/LinkModules.cpp
index c53b206..ab099bb 100644
--- a/lib/Linker/LinkModules.cpp
+++ b/lib/Linker/LinkModules.cpp
@@ -543,31 +543,6 @@ void ModuleLinker::computeTypeMapping() {
TypeMap.addTypeMapping(DGV->getType(), I->getType());
}
- // Incorporate types by name, scanning all the types in the source module.
- // At this point, the destination module may have a type "%foo = { i32 }" for
- // example. When the source module got loaded into the same LLVMContext, if
- // it had the same type, it would have been renamed to "%foo.42 = { i32 }".
- // Though it isn't required for correctness, attempt to link these up to clean
- // up the IR.
- std::vector<StructType*> SrcStructTypes;
- SrcM->findUsedStructTypes(SrcStructTypes);
-
- for (unsigned i = 0, e = SrcStructTypes.size(); i != e; ++i) {
- StructType *ST = SrcStructTypes[i];
- if (!ST->hasName()) continue;
-
- // Check to see if there is a dot in the name followed by a digit.
- size_t DotPos = ST->getName().rfind('.');
- if (DotPos == 0 || DotPos == StringRef::npos ||
- ST->getName().back() == '.' || !isdigit(ST->getName()[DotPos+1]))
- continue;
-
- // Check to see if the destination module has a struct with the prefix name.
- if (StructType *DST = DstM->getTypeByName(ST->getName().substr(0, DotPos)))
- TypeMap.addTypeMapping(DST, ST);
- }
-
-
// Don't bother incorporating aliases, they aren't generally typed well.
// Now that we have discovered all of the type equivalences, get a body for
diff --git a/test/Linker/link-type-names.ll b/test/Linker/link-type-names.ll
deleted file mode 100644
index b54c9db..0000000
--- a/test/Linker/link-type-names.ll
+++ /dev/null
@@ -1,9 +0,0 @@
-; RUN: echo "%X = type { i32 } @G2 = global %X { i32 4 }" > %t.ll
-; RUN: llvm-link %s %t.ll -S | FileCheck %s
-
-%X = type { i32 }
-@G = global %X { i32 4 }
-
-
-; CHECK: @G = global %X { i32 4 }
-; CHECK: @G2 = global %X { i32 4 }