/art/compiler/optimizing/ |
D | ssa_phi_elimination.cc | 37 ScopedArenaVector<HPhi*> worklist(allocator.Adapter(kArenaAllocSsaPhiElimination)); in MarkDeadPhis() 43 ScopedArenaSet<HPhi*> initially_live(allocator.Adapter(kArenaAllocSsaPhiElimination)); in MarkDeadPhis() 48 HPhi* phi = inst_it.Current()->AsPhi(); in MarkDeadPhis() 76 HPhi* phi = worklist.back(); in MarkDeadPhis() 79 HPhi* input = raw_input->AsPhi(); in MarkDeadPhis() 98 HPhi* phi; in EliminateDeadPhis() 131 ScopedArenaVector<HPhi*> worklist(allocator.Adapter(kArenaAllocSsaPhiElimination)); in Run() 147 ScopedArenaVector<HPhi*> cycle_worklist(allocator.Adapter(kArenaAllocSsaPhiElimination)); in Run() 150 HPhi* phi = worklist.back(); in Run() 191 HPhi* current = cycle_worklist[i]; in Run() [all …]
|
D | ssa_builder.h | 116 bool TypeInputsOfPhi(HPhi* phi, ScopedArenaVector<HPhi*>* worklist); 117 bool UpdatePrimitiveType(HPhi* phi, ScopedArenaVector<HPhi*>* worklist); 118 void ProcessPrimitiveTypePropagationWorklist(ScopedArenaVector<HPhi*>* worklist); 122 HPhi* GetFloatDoubleOrReferenceEquivalentOfPhi(HPhi* phi, DataType::Type type);
|
D | ssa_builder.cc | 69 HPhi* phi = it.Current()->AsPhi(); in EquivalentPhisCleanup() 70 HPhi* next = phi->GetNextEquivalentPhiWithSameType(); in EquivalentPhisCleanup() 91 HPhi* phi = it_phis.Current()->AsPhi(); in FixEnvironmentPhis() 111 ScopedArenaVector<HPhi*>* worklist) { in AddDependentInstructionsToWorklist() 129 static bool TypePhiFromInputs(HPhi* phi) { in TypePhiFromInputs() 139 DataType::Type input_type = HPhi::ToPhiType(input->GetType()); in TypePhiFromInputs() 173 bool SsaBuilder::TypeInputsOfPhi(HPhi* phi, ScopedArenaVector<HPhi*>* worklist) { in TypeInputsOfPhi() 180 DCHECK(HPhi::ToPhiType(input->GetType()) == common_type); in TypeInputsOfPhi() 219 bool SsaBuilder::UpdatePrimitiveType(HPhi* phi, ScopedArenaVector<HPhi*>* worklist) { in UpdatePrimitiveType() 239 ScopedArenaVector<HPhi*> worklist(local_allocator_->Adapter(kArenaAllocGraphBuilder)); in RunPrimitiveTypePropagation() [all …]
|
D | induction_var_analysis_test.cc | 109 basic_[d] = new (GetAllocator()) HPhi(GetAllocator(), d, 0, DataType::Type::kInt32); in BuildLoopNest() 125 HPhi* BuildIf(int d, HBasicBlock** ifT, HBasicBlock** ifF) { in BuildIf() 142 HPhi* select_phi = new (GetAllocator()) HPhi(GetAllocator(), -1, 0, DataType::Type::kInt32); in BuildIf() 154 HPhi* InsertLoopPhi(int vreg, int d) { in InsertLoopPhi() 155 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), vreg, 0, DataType::Type::kInt32); in InsertLoopPhi() 224 HPhi* basic_[10]; // "vreg_d", the "i_d" 313 HPhi* k_header = InsertLoopPhi(0, 0); in TEST_F() 342 HPhi* k_header = InsertLoopPhi(0, 0); in TEST_F() 347 HPhi* k_body = BuildIf(0, &ifTrue, &ifFalse); in TEST_F() 380 HPhi* k = BuildIf(0, &ifTrue, &ifFalse); in TEST_F() [all …]
|
D | loop_optimization.h | 197 void GenerateVecReductionPhi(HPhi* phi); 198 void GenerateVecReductionPhiInputs(HPhi* phi, HInstruction* reduction); 241 bool TrySetPhiInduction(HPhi* phi, bool restrict_uses); 242 bool TrySetPhiReduction(HPhi* phi); 246 bool TrySetSimpleLoopHeader(HBasicBlock* block, /*out*/ HPhi** main_phi);
|
D | select_generator.cc | 76 static HPhi* GetSingleChangedPhi(HBasicBlock* block, size_t index1, size_t index2) { in GetSingleChangedPhi() 79 HPhi* select_phi = nullptr; in GetSingleChangedPhi() 81 HPhi* phi = it.Current()->AsPhi(); in GetSingleChangedPhi() 142 HPhi* phi = GetSingleChangedPhi(merge_block, predecessor_index_true, predecessor_index_false); in Run()
|
D | select_generator_test.cc | 59 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in ConstructBasicGraphForSelect()
|
D | loop_optimization_test.cc | 219 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in TEST_F() 284 HPhi* header_phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in TEST_F() 310 HPhi* new_preheader_phi = new_preheader->GetFirstPhi()->AsPhi(); in TEST_F()
|
D | register_allocator_linear_scan.h | 32 class HPhi; variable 89 void AllocateSpillSlotForCatchPhi(HPhi* phi);
|
D | superblock_cloner.cc | 63 static bool ArePhiInputsTheSame(const HPhi* phi) { in ArePhiInputsTheSame() 178 HPhi* orig_phi = it.Current()->AsPhi(); in RemapOrigInternalOrIncomingEdge() 179 HPhi* copy_phi = GetInstrCopy(orig_phi)->AsPhi(); in RemapOrigInternalOrIncomingEdge() 208 HPhi* orig_phi = it.Current()->AsPhi(); in AddCopyInternalEdge() 209 HPhi* copy_phi = GetInstrCopy(orig_phi)->AsPhi(); in AddCopyInternalEdge() 224 HPhi* orig_phi = it.Current()->AsPhi(); in RemapCopyInternalEdge() 392 void SuperblockCloner::ResolvePhi(HPhi* phi) { in ResolvePhi() 510 HPhi* orig_phi = it.Current()->AsPhi(); in ResolveDataFlow() 511 HPhi* copy_phi = GetInstrCopy(orig_phi)->AsPhi(); in ResolveDataFlow() 593 HPhi* phi = new (arena_) HPhi(arena_, kNoRegNumber, 0, value->GetType()); in ConstructSubgraphClosedSSA() [all …]
|
D | induction_var_analysis.h | 244 void AssignCycle(HPhi* phi); 245 ArenaSet<HInstruction*>* LookupCycle(HPhi* phi); 277 ArenaSafeMap<HPhi*, ArenaSet<HInstruction*>> cycles_;
|
D | bounds_check_elimination_test.cc | 391 HPhi* phi = new (allocator) HPhi(allocator, 0, 0, DataType::Type::kInt32); in BuildSSAGraph1() 511 HPhi* phi = new (allocator) HPhi(allocator, 0, 0, DataType::Type::kInt32); in BuildSSAGraph2() 620 HPhi* phi = new (allocator) HPhi(allocator, 0, 0, DataType::Type::kInt32); in BuildSSAGraph3() 719 HPhi* phi = new (allocator) HPhi(allocator, 0, 0, DataType::Type::kInt32); in BuildSSAGraph4() 815 HPhi* phi_i = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in TEST_F() 831 HPhi* phi_j = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in TEST_F() 1001 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in TEST_F()
|
D | induction_var_range.h | 149 ArenaSet<HInstruction*>* LookupCycle(HPhi* phi) const { in LookupCycle() 158 bool IsClassified(HPhi* phi) const { in IsClassified()
|
D | graph_checker.h | 50 void VisitPhi(HPhi* phi) override;
|
D | register_allocator_test.cc | 61 HGraph* BuildIfElseWithPhi(HPhi** phi, HInstruction** input1, HInstruction** input2); 338 HPhi* phi = loop_header->GetFirstPhi()->AsPhi(); in Loop3() 486 HGraph* RegisterAllocatorTest::BuildIfElseWithPhi(HPhi** phi, in BuildIfElseWithPhi() 526 *phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in BuildIfElseWithPhi() 558 HPhi *phi; in PhiHint() 864 HPhi* user = new (GetAllocator()) HPhi(GetAllocator(), 0, 1, DataType::Type::kInt32); in TEST_F()
|
D | loop_optimization.cc | 652 HPhi* phi = it.Current()->AsPhi(); in SimplifyInduction() 740 HPhi* main_phi = nullptr; in TryOptimizeInnerLoopFinite() 1059 HPhi* main_phi = nullptr; in Vectorize() 1223 HPhi* phi = new (global_allocator_) HPhi(global_allocator_, in GenerateNewLoop() 1226 HPhi::ToPhiType(induc_type)); in GenerateNewLoop() 1813 void HLoopOptimization::GenerateVecReductionPhi(HPhi* phi) { in GenerateVecReductionPhi() 1818 HPhi* new_phi = new (global_allocator_) HPhi( in GenerateVecReductionPhi() 1828 HPhi* new_phi = new (global_allocator_) HPhi( in GenerateVecReductionPhi() 1837 void HLoopOptimization::GenerateVecReductionPhiInputs(HPhi* phi, HInstruction* reduction) { in GenerateVecReductionPhiInputs() 2281 bool HLoopOptimization::TrySetPhiInduction(HPhi* phi, bool restrict_uses) { in TrySetPhiInduction() [all …]
|
D | nodes.cc | 377 HPhi* phi = it.Current()->AsPhi(); in FixPhisAfterPredecessorsReodering() 476 HPhi* header_phi = it.Current()->AsPhi(); in TransformLoopToSinglePreheaderFormat() 478 HPhi* preheader_phi = new (GetAllocator()) HPhi(GetAllocator(), in TransformLoopToSinglePreheaderFormat() 961 void HBasicBlock::ReplaceAndRemovePhiWith(HPhi* initial, HPhi* replacement) { in ReplaceAndRemovePhiWith() 1006 void HBasicBlock::AddPhi(HPhi* phi) { in AddPhi() 1037 void HBasicBlock::InsertPhiAfter(HPhi* phi, HPhi* cursor) { in InsertPhiAfter() 1066 void HBasicBlock::RemovePhi(HPhi* phi, bool ensure_safety) { in RemovePhi() 2165 HPhi* phi = phi_it.Current()->AsPhi(); in DisconnectAndDelete() 2189 HPhi* insn = it.Current()->AsPhi(); in DisconnectAndDelete() 2548 HPhi* return_value_phi = nullptr; in InlineInto() [all …]
|
D | live_ranges_test.cc | 320 HPhi* phi = liveness.GetInstructionFromSsaIndex(1)->AsPhi(); in TEST_F() 420 HPhi* phi = liveness.GetInstructionFromSsaIndex(4)->AsPhi(); in TEST_F()
|
D | bounds_check_elimination.cc | 370 HPhi* induction_variable, in MonotonicValueRange() 485 HPhi* const induction_variable_; // Induction variable for this monotonic value range. 933 static bool HasSameInputAtBackEdges(HPhi* phi) { in HasSameInputAtBackEdges() 950 void VisitPhi(HPhi* phi) override { in VisitPhi() 1833 HPhi* phi = nullptr; in InsertPhiNodes() 1873 HPhi* NewPhi(HBasicBlock* new_preheader, in NewPhi() 1884 HPhi* phi = new (graph->GetAllocator()) in NewPhi() 1885 HPhi(graph->GetAllocator(), kNoRegNumber, /*number_of_inputs*/ 2, HPhi::ToPhiType(type)); in NewPhi()
|
D | reference_type_propagation.cc | 117 void VisitPhi(HPhi* phi) override; 131 void UpdatePhi(HPhi* phi) REQUIRES_SHARED(Locks::mutator_lock_); 781 void ReferenceTypePropagation::RTPVisitor::VisitPhi(HPhi* phi) { in VisitPhi() 956 void ReferenceTypePropagation::RTPVisitor::UpdatePhi(HPhi* instr) { in UpdatePhi() 1013 HPhi* phi = instr->AsPhi(); in UpdateNullability()
|
D | graph_checker.cc | 522 HPhi* catch_phi = phi_it.Current()->AsPhi(); in VisitInstruction() 806 void GraphChecker::VisitPhi(HPhi* phi) { in VisitPhi() 829 if (phi->GetType() != HPhi::ToPhiType(phi->GetType())) { in VisitPhi() 910 HPhi* other_phi = phi_it.Current()->AsPhi(); in VisitPhi()
|
D | superblock_cloner_test.cc | 68 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in CreateBasicLoopDataFlow() 428 HPhi* loop_phi = it.Current()->AsPhi(); in TEST_F()
|
D | superblock_cloner.h | 313 void ResolvePhi(HPhi* phi);
|
D | instruction_builder.cc | 109 HPhi* phi = new (allocator_) HPhi( in GetLocalsForWithAllocation() 159 HPhi* phi = new (allocator_) HPhi( in InitializeBlockLocals() 198 HPhi* phi = new (allocator_) HPhi( in InitializeBlockLocals() 286 HPhi* phi = it.Current()->AsPhi(); in SetLoopHeaderPhiInputs() 1714 DCHECK_EQ(HPhi::ToPhiType(value->GetType()), HPhi::ToPhiType(field_type)); in BuildStaticFieldAccess()
|
D | dead_code_elimination.cc | 343 HPhi* phi = block->GetFirstPhi()->AsPhi(); in SimplifyIfs()
|