diff options
Diffstat (limited to 'src/compiler_llvm/compiler_llvm.cc')
| -rw-r--r-- | src/compiler_llvm/compiler_llvm.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/compiler_llvm/compiler_llvm.cc b/src/compiler_llvm/compiler_llvm.cc index 8a9b3622e5..21a7bb95e9 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 @@ CompilerLLVM::CompileDexMethod(DexFile::CodeItem const* code_item, } +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 |