Searched refs:loop_info (Results 1 - 9 of 9) sorted by relevance

/art/compiler/optimizing/
H A Dcha_guard_optimization.cc182 HLoopInformation* loop_info = block->GetLoopInformation(); local
183 if (loop_info != nullptr &&
184 !loop_info->IsIrreducible() &&
185 loop_info->IsDefinedOutOfTheLoop(receiver)) {
197 HBasicBlock* pre_header = loop_info->GetPreHeader();
202 HInstruction* suspend = loop_info->GetSuspendCheck();
209 suspend->GetEnvironment(), loop_info->GetHeader());
H A Dlicm.cc100 HLoopInformation* loop_info = block->GetLoopInformation(); local
102 HBasicBlock* pre_header = loop_info->GetPreHeader();
104 for (HBlocksInLoopIterator it_loop(*loop_info); !it_loop.Done(); it_loop.Advance()) {
107 if (inner->GetLoopInformation() != loop_info) {
116 if (loop_info->ContainsIrreducibleLoop()) {
121 DCHECK(!loop_info->IsIrreducible());
139 UpdateLoopPhisIn(instruction->GetEnvironment(), loop_info);
H A Dloop_optimization.h49 : loop_info(lp_info),
54 HLoopInformation* loop_info; member in struct:art::HLoopOptimization::LoopNode
107 void AddLoop(HLoopInformation* loop_info);
152 bool IsOnlyUsedAfterLoop(HLoopInformation* loop_info,
156 bool IsUsedOutsideLoop(HLoopInformation* loop_info,
158 bool TryReplaceWithLastValue(HLoopInformation* loop_info,
161 bool TryAssignLastValue(HLoopInformation* loop_info,
H A Dloop_optimization.cc54 static bool IsEarlyExit(HLoopInformation* loop_info) { argument
55 HBlocksInLoopReversePostOrderIterator it_loop(*loop_info);
58 if (!loop_info->Contains(*successor)) {
269 void HLoopOptimization::AddLoop(HLoopInformation* loop_info) { argument
270 DCHECK(loop_info != nullptr);
271 LoopNode* node = new (loop_allocator_) LoopNode(loop_info);
276 } else if (loop_info->IsIn(*last_loop_->loop_info)) {
283 while (last_loop_->outer != nullptr && !loop_info->IsIn(*last_loop_->outer->loop_info)) {
1342 IsUsedOutsideLoop(HLoopInformation* loop_info, HInstruction* instruction) argument
1352 IsOnlyUsedAfterLoop(HLoopInformation* loop_info, HInstruction* instruction, bool collect_loop_uses, int32_t* use_count) argument
1375 TryReplaceWithLastValue(HLoopInformation* loop_info, HInstruction* instruction, HBasicBlock* block) argument
1417 TryAssignLastValue(HLoopInformation* loop_info, HInstruction* instruction, HBasicBlock* block, bool collect_loop_uses) argument
[all...]
H A Dload_store_elimination.cc414 HLoopInformation* loop_info = instruction->GetBlock()->GetLoopInformation(); variable
415 if (loop_info != nullptr) {
418 if (loop_info->IsDefinedOutOfTheLoop(ref)) {
853 HLoopInformation* loop_info = instruction->GetBlock()->GetLoopInformation(); local
854 if (loop_info != nullptr) {
856 DCHECK(side_effects_.GetLoopEffects(loop_info->GetHeader()).DoesAnyWrite());
858 if (loop_info->IsDefinedOutOfTheLoop(original_ref)) {
859 DCHECK(original_ref->GetBlock()->Dominates(loop_info->GetPreHeader()));
H A Dgraph_visualizer.cc602 HLoopInformation* loop_info = instruction->GetBlock()->GetLoopInformation(); local
603 if (loop_info == nullptr) {
606 StartAttributeStream("loop") << "B" << loop_info->GetHeader()->GetBlockId();
607 HLoopInformation* outer = loop_info->GetPreHeader()->GetLoopInformation();
614 << std::boolalpha << loop_info->IsIrreducible() << std::noboolalpha;
H A Dnodes.cc1744 HLoopInformation* loop_info = GetLoopInformation(); local
1747 // Note that we do not remove `this` from `loop_info` as it is unreachable.
1748 DCHECK(!loop_info->IsIrreducible());
1749 DCHECK_EQ(loop_info->GetBlocks().NumSetBits(), 1u);
1750 DCHECK_EQ(static_cast<uint32_t>(loop_info->GetBlocks().GetHighestBitSet()), GetBlockId());
1751 loop_update_start = loop_info->GetPreHeader();
1855 HLoopInformation* loop_info = it.Current(); local
1856 loop_info->Remove(this);
1857 if (loop_info->IsBackEdge(*this)) {
1861 loop_info
1894 HLoopInformation* loop_info = it.Current(); local
2012 HLoopInformation* loop_info = block->GetLoopInformation(); local
[all...]
H A Dregister_allocator_graph_color.cc66 HLoopInformation* loop_info = block->GetLoopInformation(); local
68 while (loop_info != nullptr) {
70 loop_info = loop_info->GetPreHeader()->GetLoopInformation();
H A Dnodes.h957 HLoopInformation* loop_info = GetLoopInformation(); local
960 && (loop_info == nullptr || !loop_info->IsBackEdge(*this));

Completed in 91 milliseconds