diff options
| author | 2015-05-27 17:13:03 +0000 | |
|---|---|---|
| committer | 2015-05-27 17:13:03 +0000 | |
| commit | 13df71cea8c774d28e834497288f67cb2bbb16b0 (patch) | |
| tree | 155f1128c0dfa651b70360f311e3b581a8b28bdb /compiler/optimizing/builder.cc | |
| parent | 55bf5b4f1a570fb10d7ba8c91ac49c6bc16639ac (diff) | |
| parent | 81d804a51d4fc415e1544a5a09505db049f4eda6 (diff) | |
Merge "Bring Reference Type Propagation to NewArray"
Diffstat (limited to 'compiler/optimizing/builder.cc')
| -rw-r--r-- | compiler/optimizing/builder.cc | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler/optimizing/builder.cc b/compiler/optimizing/builder.cc index 49a0444f94..c4f033df52 100644 --- a/compiler/optimizing/builder.cc +++ b/compiler/optimizing/builder.cc @@ -1027,7 +1027,11 @@ void HGraphBuilder::BuildFilledNewArray(uint32_t dex_pc,    QuickEntrypointEnum entrypoint = NeedsAccessCheck(type_index)        ? kQuickAllocArrayWithAccessCheck        : kQuickAllocArray; -  HInstruction* object = new (arena_) HNewArray(length, dex_pc, type_index, entrypoint); +  HInstruction* object = new (arena_) HNewArray(length, +                                                dex_pc, +                                                type_index, +                                                *dex_compilation_unit_->GetDexFile(), +                                                entrypoint);    current_block_->AddInstruction(object);    const char* descriptor = dex_file_->StringByTypeIdx(type_index); @@ -1993,8 +1997,8 @@ bool HGraphBuilder::AnalyzeDexInstruction(const Instruction& instruction, uint32        QuickEntrypointEnum entrypoint = NeedsAccessCheck(type_index)            ? kQuickAllocArrayWithAccessCheck            : kQuickAllocArray; -      current_block_->AddInstruction( -          new (arena_) HNewArray(length, dex_pc, type_index, entrypoint)); +      current_block_->AddInstruction(new (arena_) HNewArray( +          length, dex_pc, type_index, *dex_compilation_unit_->GetDexFile(), entrypoint));        UpdateLocal(instruction.VRegA_22c(), current_block_->GetLastInstruction());        break;      }  |