Unless we CANNOT merge the arguments, do so
llvm-svn: 7999
diff --git a/llvm/lib/Transforms/IPO/FunctionResolution.cpp b/llvm/lib/Transforms/IPO/FunctionResolution.cpp
index e4bfcb9..7d60981 100644
--- a/llvm/lib/Transforms/IPO/FunctionResolution.cpp
+++ b/llvm/lib/Transforms/IPO/FunctionResolution.cpp
@@ -69,7 +69,9 @@
std::cerr << "WARNING: Function [" << Old->getName()
<< "]: Parameter types conflict for: '" << OldMT
<< "' and '" << ConcreteMT << "'\n";
- return Changed;
+ if (OldMT->getParamTypes()[i]->getPrimitiveID() !=
+ ConcreteMT->getParamTypes()[i]->getPrimitiveID())
+ return Changed;
}
// Attempt to convert all of the uses of the old function to the concrete