From cc1b4c3aa7e769421de656c8fd396e91875435bd Mon Sep 17 00:00:00 2001 From: TDYa127 Date: Tue, 15 May 2012 07:31:37 -0700 Subject: Remove unnecessary checks for small methods. Remove unnecessary shadow frames, suspend checks, stack overflow checks, null pointer checks for small methods. Change-Id: I4e67e2d38a398ff62b84a74265efb26ce054fab3 --- src/compiler_llvm/method_compiler.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/compiler_llvm/method_compiler.h') 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_; -- cgit v1.2.3-59-g8ed1b