diff options
| author | 2012-04-01 15:24:56 -0700 | |
|---|---|---|
| committer | 2012-04-07 10:33:12 -0700 | |
| commit | 8532191c4fc8e005f7d432fec40fd9f2936275c6 (patch) | |
| tree | 2173082a31163332c22b262331fe98470583cd12 /src/compiler_llvm/method_compiler.h | |
| parent | b12c3017e619747ab26ba56d935401a7e45b59cd (diff) | |
Late method resolution.
Change-Id: Ic35348022391c3c11a1d4984b9add7b6ef53aa4c
Diffstat (limited to 'src/compiler_llvm/method_compiler.h')
| -rw-r--r-- | src/compiler_llvm/method_compiler.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler_llvm/method_compiler.h b/src/compiler_llvm/method_compiler.h index 1ff3a9f9df..e5be3ba161 100644 --- a/src/compiler_llvm/method_compiler.h +++ b/src/compiler_llvm/method_compiler.h @@ -194,6 +194,16 @@ class MethodCompiler { void EmitInsn_SPut(GEN_INSN_ARGS, JType field_jty); // INVOKE instructions + llvm::Value* EmitEnsureInitialized(llvm::Value* callee_method_object_addr, + uint32_t method_idx, + bool is_static, + llvm::Value* code_addr); + llvm::Value* EmitEnsureResolved(llvm::Value* callee, + llvm::Value* caller, + uint32_t dex_method_idx, + Instruction::Code instr_code); + void EmitEnsureLink(llvm::Value*); + void EmitInsn_InvokeVirtual(GEN_INSN_ARGS, bool is_range); void EmitInsn_InvokeSuper(GEN_INSN_ARGS, bool is_range); void EmitInsn_InvokeVirtualSuperSlow(uint32_t dex_pc, |