simplify some code.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65782 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp
index 7429238..b6b52cd 100644
--- a/lib/CodeGen/CodeGenModule.cpp
+++ b/lib/CodeGen/CodeGenModule.cpp
@@ -794,8 +794,6 @@
   // Lookup the entry, lazily creating it if necessary.
   llvm::GlobalValue *&Entry = GlobalDeclMap[getMangledName(D)];
   if (!Entry)
-    Entry = getModule().getFunction(getMangledName(D));
-  if (!Entry)
     Entry = EmitForwardFunctionDefinition(D, 0);
 
   return llvm::ConstantExpr::getBitCast(Entry, PTy);
@@ -915,15 +913,13 @@
     assert(Existing == 0 && "FIXME: Name collision");
   }
 
-  llvm::GlobalValue *&ExitingFn = GlobalDeclMap[getContext().Idents.get(Name).getName()];
-  if (ExitingFn) {
-    llvm::Function *Fn = dyn_cast<llvm::Function>(ExitingFn);
-    assert(Fn && "builting mixing with non-function");
-    return FunctionSlot = llvm::ConstantExpr::getBitCast(Fn, Ty);
-  }
+  llvm::GlobalValue *&ExistingFn =
+    GlobalDeclMap[getContext().Idents.get(Name).getName()];
+  if (ExistingFn)
+    return FunctionSlot = llvm::ConstantExpr::getBitCast(ExistingFn, Ty);
 
   // FIXME: param attributes for sext/zext etc.
-  return FunctionSlot = ExitingFn =
+  return FunctionSlot = ExistingFn =
     llvm::Function::Create(Ty, llvm::Function::ExternalLinkage, Name,
                            &getModule());
 }