[Orc][Kaleidoscope] Fix a missed symbol mangling operation in the fully lazy tutorial.
authorLang Hames <lhames@gmail.com>
Thu, 26 Feb 2015 19:28:37 +0000 (19:28 +0000)
committerLang Hames <lhames@gmail.com>
Thu, 26 Feb 2015 19:28:37 +0000 (19:28 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230664 91177308-0d34-0410-b5e6-96231b3b80d8

examples/Kaleidoscope/Orc/fully_lazy/toy.cpp

index 333cb94e36509597f4120fe41c198c08859b6ee6..2e65756049f23281caafe5333c79c8d9cf4d7dfd 100644 (file)
@@ -1223,6 +1223,10 @@ public:
     return findSymbol(mangle(Name));
   }
 
+  JITSymbol findUnmangledSymbolIn(ModuleHandleT H, const std::string &Name) {
+    return findSymbolIn(H, mangle(Name));
+  }
+
 private:
 
   // This method searches the FunctionDefs map for a definition of 'Name'. If it
@@ -1284,7 +1288,7 @@ private:
     std::shared_ptr<FunctionAST> Fn = std::move(FnAST);
     CallbackInfo.setCompileAction([this, Fn]() {
       auto H = addModule(IRGen(Session, *Fn));
-      return findSymbolIn(H, Fn->Proto->Name).getAddress();
+      return findUnmangledSymbolIn(H, Fn->Proto->Name).getAddress();
     });
     CallbackInfo.setUpdateAction(
       CompileCallbacks.getLocalFPUpdater(H, mangle(BodyPtrName)));