Fix a fairly nasty bug that prevented bugpoint from working quite right when
hacking on programs with two functions that have the same name.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12604 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/bugpoint/ExtractFunction.cpp b/tools/bugpoint/ExtractFunction.cpp
index 5119c80..eea7bd8 100644
--- a/tools/bugpoint/ExtractFunction.cpp
+++ b/tools/bugpoint/ExtractFunction.cpp
@@ -195,7 +195,9 @@
     bool funcFound = false;
     for (std::vector<Function*>::const_iterator FI = F.begin(), Fe = F.end();
          FI != Fe; ++FI)
-      if (I->getName() == (*FI)->getName()) funcFound = true;
+      if (I->getName() == (*FI)->getName() &&
+          I->getType() == (*FI)->getType())
+        funcFound = true;
 
     if (!funcFound)
       DeleteFunctionBody(I);