Add upcall compiler.
Upcall compiler compiles the invoke stub for native-to-managed
method invocation.
Change-Id: I09fb1e4b3f166e8da5de73e8f39509cd9be6c152
diff --git a/src/compiler_llvm/compiler_llvm.cc b/src/compiler_llvm/compiler_llvm.cc
index 8a9b362..21a7bb9 100644
--- a/src/compiler_llvm/compiler_llvm.cc
+++ b/src/compiler_llvm/compiler_llvm.cc
@@ -19,6 +19,7 @@
#include "compiler.h"
#include "ir_builder.h"
#include "method_compiler.h"
+#include "upcall_compiler.h"
#include <llvm/ADT/OwningPtr.h>
#include <llvm/Bitcode/ReaderWriter.h>
@@ -104,5 +105,17 @@
}
+CompiledInvokeStub* CompilerLLVM::CreateInvokeStub(bool is_static,
+ char const *shorty) {
+
+ MutexLock GUARD(compiler_lock_);
+
+ UniquePtr<UpcallCompiler> upcall_compiler(
+ new UpcallCompiler(insn_set_, *compiler_));
+
+ return upcall_compiler->CreateStub(is_static, shorty);
+}
+
+
} // namespace compiler_llvm
} // namespace art