Add upcall compiler.
Upcall compiler compiles the invoke stub for native-to-managed
method invocation.
Change-Id: I09fb1e4b3f166e8da5de73e8f39509cd9be6c152
diff --git a/src/compiler.cc b/src/compiler.cc
index 08c6cc4..c917736 100644
--- a/src/compiler.cc
+++ b/src/compiler.cc
@@ -988,6 +988,9 @@
bool is_static = (access_flags & kAccStatic) != 0;
const CompiledInvokeStub* compiled_invoke_stub = FindInvokeStub(is_static, shorty);
if (compiled_invoke_stub == NULL) {
+#if defined(ART_USE_LLVM_COMPILER)
+ compiled_invoke_stub = compiler_llvm_->CreateInvokeStub(is_static, shorty);
+#else
if (instruction_set_ == kX86) {
compiled_invoke_stub = ::art::x86::X86CreateInvokeStub(is_static, shorty);
} else {
@@ -995,6 +998,8 @@
// Generates invocation stub using ARM instruction set
compiled_invoke_stub = ::art::arm::ArmCreateInvokeStub(is_static, shorty);
}
+#endif
+
CHECK(compiled_invoke_stub != NULL);
InsertInvokeStub(is_static, shorty, compiled_invoke_stub);
}