diff options
Diffstat (limited to 'src/compiler_llvm/method_compiler.cc')
| -rw-r--r-- | src/compiler_llvm/method_compiler.cc | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/src/compiler_llvm/method_compiler.cc b/src/compiler_llvm/method_compiler.cc index 4070791061..90285946ba 100644 --- a/src/compiler_llvm/method_compiler.cc +++ b/src/compiler_llvm/method_compiler.cc @@ -263,9 +263,11 @@ void MethodCompiler::EmitPrologueAllocShadowFrame() {    // Allocate the shadow frame now!    uint32_t sirt_size = 0; -  for (uint32_t i = 0, num_of_regs = code_item_->registers_size_; i < num_of_regs; ++i) { -    if (IsRegCanBeObject(i)) { -      reg_to_shadow_frame_index_[i] = sirt_size++; +  if (method_info_.need_shadow_frame_entry) { +    for (uint32_t i = 0, num_of_regs = code_item_->registers_size_; i < num_of_regs; ++i) { +      if (IsRegCanBeObject(i)) { +        reg_to_shadow_frame_index_[i] = sirt_size++; +      }      }    } |