diff options
Diffstat (limited to 'src/compiler_llvm/method_compiler.h')
| -rw-r--r-- | src/compiler_llvm/method_compiler.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/compiler_llvm/method_compiler.h b/src/compiler_llvm/method_compiler.h index f86d740cc9..6a6768b42b 100644 --- a/src/compiler_llvm/method_compiler.h +++ b/src/compiler_llvm/method_compiler.h @@ -264,6 +264,21 @@ class MethodCompiler { #undef GEN_INSN_ARGS + // Dex cache code generation helper function + llvm::Value* EmitLoadDexCacheAddr(MemberOffset dex_cache_offset); + + void EmitLoadDexCacheCodeAndDirectMethodFieldAddr( + llvm::Value*& code_addr_field_addr, + llvm::Value*& method_field_addr, + uint32_t method_idx); + + llvm::Value* EmitLoadDexCacheStaticStorageFieldAddr(uint32_t type_idx); + + llvm::Value* EmitLoadDexCacheResolvedTypeFieldAddr(uint32_t type_idx); + + llvm::Value* EmitLoadDexCacheStringFieldAddr(uint32_t string_idx); + + // Code generation helper function llvm::Value* EmitLoadMethodObjectAddr(); |