[Bf-blender-cvs] [6a69a32c6d5] temp-llvm-testing: object file test
Jacques Lucke
noreply at git.blender.org
Wed Dec 29 21:45:49 CET 2021
Commit: 6a69a32c6d56ff2c867dd60ed890525723267c99
Author: Jacques Lucke
Date: Wed Dec 29 20:37:26 2021 +0100
Branches: temp-llvm-testing
https://developer.blender.org/rB6a69a32c6d56ff2c867dd60ed890525723267c99
object file test
===================================================================
M source/blender/functions/intern/llvm.cc
===================================================================
diff --git a/source/blender/functions/intern/llvm.cc b/source/blender/functions/intern/llvm.cc
index de255962dda..e8cf3a3e998 100644
--- a/source/blender/functions/intern/llvm.cc
+++ b/source/blender/functions/intern/llvm.cc
@@ -25,6 +25,7 @@
#include <llvm/IR/Verifier.h>
#include <llvm/Support/CommandLine.h>
#include <llvm/Support/TargetRegistry.h>
+#include <llvm/Object/ObjectFile.h>
#include <llvm/Support/TargetSelect.h>
#include "FN_llvm.hh"
@@ -90,9 +91,15 @@ void playground()
MyObjectCache object_cache;
+ llvm::Expected<llvm::object::OwningBinary<llvm::object::ObjectFile>> object_file_ex = llvm::object::ObjectFile::createObjectFile(object_file_path);
+ if (!object_file_ex) {
+ return;
+ }
+
llvm::Module *module_ptr = &*module;
std::unique_ptr<llvm::ExecutionEngine> ee{llvm::EngineBuilder(std::move(module)).create()};
- ee->setObjectCache(&object_cache);
+ ee->addObjectFile(std::move(*object_file_ex));
+ //ee->setObjectCache(&object_cache);
ee->finalizeObject();
const uint64_t function_ptr = ee->getFunctionAddress(function->getName().str());
More information about the Bf-blender-cvs
mailing list