From 8946fe177659512b14f7292eb0f0fc8532fcce64 Mon Sep 17 00:00:00 2001
From: Nick Lewycky <nicholas@mxc.ca>
Date: Sat, 16 Jun 2007 16:17:35 +0000
Subject: [PATCH] Call the correct function name. Patch from Stephane Letz.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37614 91177308-0d34-0410-b5e6-96231b3b80d8
---
 test/Other/2007-06-16-Funcname.ll | 7 +++++++
 tools/llvm2cpp/CppWriter.cpp      | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
 create mode 100644 test/Other/2007-06-16-Funcname.ll

diff --git a/test/Other/2007-06-16-Funcname.ll b/test/Other/2007-06-16-Funcname.ll
new file mode 100644
index 00000000000..a2cdd18d53e
--- /dev/null
+++ b/test/Other/2007-06-16-Funcname.ll
@@ -0,0 +1,7 @@
+; RUN: llvm-as < %s | llvm2cpp -funcname=WAKKA | not grep makeLLVMModule
+; PR1515
+
+define void @foo() {
+  ret void
+}
+
diff --git a/tools/llvm2cpp/CppWriter.cpp b/tools/llvm2cpp/CppWriter.cpp
index 86e266147c0..1076b59c021 100644
--- a/tools/llvm2cpp/CppWriter.cpp
+++ b/tools/llvm2cpp/CppWriter.cpp
@@ -1690,7 +1690,7 @@ void CppWriter::printProgram(
   Out << "using namespace llvm;\n\n";
   Out << "Module* " << fname << "();\n\n";
   Out << "int main(int argc, char**argv) {\n";
-  Out << "  Module* Mod = makeLLVMModule();\n";
+  Out << "  Module* Mod = " << fname << "();\n";
   Out << "  verifyModule(*Mod, PrintMessageAction);\n";
   Out << "  std::cerr.flush();\n";
   Out << "  std::cout.flush();\n";