summaryrefslogtreecommitdiff
path: root/src/compiler_llvm/method_compiler.h
diff options
context:
space:
mode:
author TDYa127 <tdy@google.com> 2012-05-15 07:31:37 -0700
committer Shih-wei Liao <sliao@google.com> 2012-05-15 23:51:25 -0700
commitcc1b4c3aa7e769421de656c8fd396e91875435bd (patch)
treed0db17974b08f12bbfa646e5cdd24c3d8ff61d50 /src/compiler_llvm/method_compiler.h
parentbab4283a7a5fa8f739258d6ba4e109f42c31a6a3 (diff)
Remove unnecessary checks for small methods.
Remove unnecessary shadow frames, suspend checks, stack overflow checks, null pointer checks for small methods. Change-Id: I4e67e2d38a398ff62b84a74265efb26ce054fab3
Diffstat (limited to 'src/compiler_llvm/method_compiler.h')
-rw-r--r--src/compiler_llvm/method_compiler.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/compiler_llvm/method_compiler.h b/src/compiler_llvm/method_compiler.h
index e815e3b2e4..598a337081 100644
--- a/src/compiler_llvm/method_compiler.h
+++ b/src/compiler_llvm/method_compiler.h
@@ -434,6 +434,18 @@ class MethodCompiler {
EmitStoreDalvikRetValReg(GetJTypeFromShorty(shorty), space, new_value);
}
+ // TODO: Use high-level IR to do this
+
+ struct MethodInfo {
+ int64_t this_reg_idx;
+ bool this_will_not_be_null;
+ bool has_invoke;
+ bool need_shadow_frame_entry;
+ bool need_shadow_frame;
+ };
+ MethodInfo method_info_;
+
+ void ComputeMethodInfo();
private:
CompilationUnit* cunit_;