Add inteface to libbcc for llvm::Module input.
diff --git a/bcc.cpp b/bcc.cpp
index 9d5bc3c..8b41a9e 100644
--- a/bcc.cpp
+++ b/bcc.cpp
@@ -2343,6 +2343,12 @@
return;
}
+ int loadModule(llvm::Module *module) {
+ GlobalInitialization();
+ mModule = module;
+ return hasError();
+ }
+
int loadModule(const char *bitcode, size_t bitcodeSize) {
llvm::MemoryBuffer *SB = NULL;
@@ -2758,6 +2764,12 @@
}
extern "C"
+void bccScriptModule(BCCscript *script,
+ BCCvoid *module) {
+ script->compiler.loadModule(reinterpret_cast<llvm::Module*>(module));
+}
+
+extern "C"
void bccScriptBitcode(BCCscript *script,
const BCCchar *bitcode,
BCCint size) {