diff options
| author | 2012-01-17 16:06:00 +0800 | |
|---|---|---|
| committer | 2012-02-18 02:09:10 -0800 | |
| commit | 438c4b6cdb90ecb4c79c9a763884e915fd566343 (patch) | |
| tree | a6239fe57a92f5c9ab7b3b2484205ca4887ae1aa /src/compiler_llvm/method_compiler.h | |
| parent | c3b4ba13d5c62b5f837c9fbd47098c06f504cd03 (diff) | |
Implement sget* instructions.
Change-Id: I53f655c23bf78c05d214d721496380474ea3e238
Diffstat (limited to 'src/compiler_llvm/method_compiler.h')
| -rw-r--r-- | src/compiler_llvm/method_compiler.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/compiler_llvm/method_compiler.h b/src/compiler_llvm/method_compiler.h index df381ee559..36f90e596a 100644 --- a/src/compiler_llvm/method_compiler.h +++ b/src/compiler_llvm/method_compiler.h @@ -37,6 +37,7 @@ namespace art { class CompiledMethod; class Compiler; class DexCache; + class Field; } @@ -322,6 +323,8 @@ class MethodCompiler { llvm::Value* EmitLoadConstantClass(uint32_t dex_pc, uint32_t type_idx); + llvm::Value* EmitLoadStaticStorage(uint32_t dex_pc, uint32_t type_idx); + void EmitGuard_DivZeroException(uint32_t dex_pc, llvm::Value* denominator, JType op_jty); @@ -339,6 +342,11 @@ class MethodCompiler { RegCategory GetInferredRegCategory(uint32_t dex_pc, uint16_t reg); + Field* ResolveField(uint32_t field_idx); + + Field* FindFieldAndDeclaringTypeIdx(uint32_t field_idx, + uint32_t &resolved_type_idx); + // Diagnostics helper function void PrintUnresolvedFieldWarning(int32_t field_idx); |