Home
last modified time | relevance | path

Searched refs:HPhi (Results 1 – 25 of 33) sorted by relevance

12

/art/compiler/optimizing/
Dssa_builder.h116 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);
Dssa_phi_elimination.cc37 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 …]
Dssa_builder.cc69 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 …]
Dinduction_var_analysis_test.cc109 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 …]
Dloop_optimization.h197 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);
Dselect_generator.cc76 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()
Dselect_generator_test.cc67 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in ConstructBasicGraphForSelect()
Dregister_allocator_linear_scan.h32 class HPhi; variable
89 void AllocateSpillSlotForCatchPhi(HPhi* phi);
Dloop_optimization_test.cc219 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()
Dsuperblock_cloner.cc63 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 …]
Dinduction_var_analysis.h244 void AssignCycle(HPhi* phi);
245 ArenaSet<HInstruction*>* LookupCycle(HPhi* phi);
277 ArenaSafeMap<HPhi*, ArenaSet<HInstruction*>> cycles_;
Dbounds_check_elimination_test.cc391 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()
Dloop_optimization.cc650 HPhi* phi = it.Current()->AsPhi(); in SimplifyInduction()
738 HPhi* main_phi = nullptr; in TryOptimizeInnerLoopFinite()
1062 HPhi* main_phi = nullptr; in Vectorize()
1226 HPhi* phi = new (global_allocator_) HPhi(global_allocator_, in GenerateNewLoop()
1229 HPhi::ToPhiType(induc_type)); in GenerateNewLoop()
1769 void HLoopOptimization::GenerateVecReductionPhi(HPhi* phi) { in GenerateVecReductionPhi()
1774 HPhi* new_phi = new (global_allocator_) HPhi( in GenerateVecReductionPhi()
1784 HPhi* new_phi = new (global_allocator_) HPhi( in GenerateVecReductionPhi()
1793 void HLoopOptimization::GenerateVecReductionPhiInputs(HPhi* phi, HInstruction* reduction) { in GenerateVecReductionPhiInputs()
2237 bool HLoopOptimization::TrySetPhiInduction(HPhi* phi, bool restrict_uses) { in TrySetPhiInduction()
[all …]
Dinduction_var_range.h149 ArenaSet<HInstruction*>* LookupCycle(HPhi* phi) const { in LookupCycle()
158 bool IsClassified(HPhi* phi) const { in IsClassified()
Dgraph_checker.h50 void VisitPhi(HPhi* phi) override;
Dregister_allocator_test.cc61 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()
Dnodes.cc377 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 …]
Dlive_ranges_test.cc320 HPhi* phi = liveness.GetInstructionFromSsaIndex(1)->AsPhi(); in TEST_F()
420 HPhi* phi = liveness.GetInstructionFromSsaIndex(4)->AsPhi(); in TEST_F()
Dbounds_check_elimination.cc370 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()
Dreference_type_propagation.cc117 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()
Dgraph_checker.cc522 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()
Dsuperblock_cloner_test.cc76 HPhi* phi = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in CreateBasicLoopDataFlow()
436 HPhi* loop_phi = it.Current()->AsPhi(); in TEST_F()
Dsuperblock_cloner.h313 void ResolvePhi(HPhi* phi);
Dinstruction_builder.cc110 HPhi* phi = new (allocator_) HPhi( in GetLocalsForWithAllocation()
160 HPhi* phi = new (allocator_) HPhi( in InitializeBlockLocals()
199 HPhi* phi = new (allocator_) HPhi( in InitializeBlockLocals()
287 HPhi* phi = it.Current()->AsPhi(); in SetLoopHeaderPhiInputs()
1736 DCHECK_EQ(HPhi::ToPhiType(value->GetType()), HPhi::ToPhiType(field_type)); in BuildStaticFieldAccess()
Dload_store_elimination_test.cc83 phi_ = new (GetAllocator()) HPhi(GetAllocator(), 0, 0, DataType::Type::kInt32); in CreateTestControlFlowGraph()
263 HPhi* phi_;

12