Lines Matching refs:graph_

252   HBasicBlock* exit = graph_->GetExitBlock();  in SimplifyAlwaysThrows()
253 if (!graph_->HasAlwaysThrowingInvokes() || exit == nullptr) { in SimplifyAlwaysThrows()
260 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in SimplifyAlwaysThrows()
315 graph_->RecomputeDominatorTree(); in SimplifyAlwaysThrows()
328 for (HBasicBlock* block : graph_->GetPostOrder()) { in SimplifyIfs()
439 graph_->RecomputeDominatorTree(); in SimplifyIfs()
441 graph_->ClearDominanceInformation(); in SimplifyIfs()
443 graph_->SimplifyCFG(); in SimplifyIfs()
444 graph_->ComputeDominanceInformation(); in SimplifyIfs()
445 graph_->ComputeTryBlockInformation(); in SimplifyIfs()
505 HPhi* new_phi = new (graph_->GetAllocator()) in MaybeAddPhi()
506 HPhi(graph_->GetAllocator(), kNoRegNumber, pred_size, DataType::Type::kInt32); in MaybeAddPhi()
553 same_input == dominated_by_true ? graph_->GetIntConstant(1) : graph_->GetIntConstant(0)); in MaybeAddPhi()
573 for (size_t i = 1u, size = graph_->GetReversePostOrder().size(); i != size; ++i) { in ConnectSuccessiveBlocks()
574 HBasicBlock* block = graph_->GetReversePostOrder()[i]; in ConnectSuccessiveBlocks()
581 DCHECK_LT(i, IndexOfElement(graph_->GetReversePostOrder(), successor)); in ConnectSuccessiveBlocks()
584 DCHECK_EQ(size, graph_->GetReversePostOrder().size()); in ConnectSuccessiveBlocks()
585 DCHECK_EQ(block, graph_->GetReversePostOrder()[i]); in ConnectSuccessiveBlocks()
604 const ArenaVector<HBasicBlock*>& blocks = graph_->GetBlocks(); in CanPerformTryRemoval()
637 block->AddInstruction(new (graph_->GetAllocator()) HGoto(last->GetDexPc())); in DisconnectHandlersAndUpdateTryBoundary()
649 const ArenaVector<HBasicBlock*>& blocks = graph_->GetBlocks(); in RemoveTry()
678 predecessor->ReplaceSuccessor(block, graph_->GetExitBlock()); in RemoveTry()
683 DCHECK_EQ(graph_->GetExitBlock()->GetDominator(), block); in RemoveTry()
684 predecessor->AddDominatedBlock(graph_->GetExitBlock()); in RemoveTry()
685 graph_->GetExitBlock()->SetDominator(predecessor); in RemoveTry()
686 block->RemoveDominatedBlock(graph_->GetExitBlock()); in RemoveTry()
694 if (!graph_->HasTryCatch()) { in RemoveUnneededTries()
699 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in RemoveUnneededTries()
704 for (HBasicBlock* block : graph_->GetReversePostOrderSkipEntryBlock()) { in RemoveUnneededTries()
709 it = tries.insert({key, TryBelongingInformation(graph_, &allocator)}).first; in RemoveUnneededTries()
782 for (HBasicBlock* block : graph_->GetPostOrder()) { in RemoveEmptyIfs()
800 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in RemoveEmptyIfs()
802 &allocator, graph_->GetBlocks().size(), /*expandable=*/ false, kArenaAllocDCE); in RemoveEmptyIfs()
825 &allocator, graph_->GetCurrentInstructionId(), /*expandable=*/ false, kArenaAllocDCE); in RemoveEmptyIfs()
831 if_instr, new (graph_->GetAllocator()) HGoto(if_instr->GetDexPc())); in RemoveEmptyIfs()
862 graph_->RecomputeDominatorTree(); in RemoveEmptyIfs()
873 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in RemoveDeadBlocks()
876 ArenaBitVector live_blocks(&allocator, graph_->GetBlocks().size(), false, kArenaAllocDCE); in RemoveDeadBlocks()
878 MarkReachableBlocks(graph_, &live_blocks); in RemoveDeadBlocks()
885 for (HBasicBlock* block : graph_->GetPostOrder()) { in RemoveDeadBlocks()
901 graph_->RecomputeDominatorTree(); in RemoveDeadBlocks()
903 graph_->ClearDominanceInformation(); in RemoveDeadBlocks()
904 graph_->ComputeDominanceInformation(); in RemoveDeadBlocks()
905 graph_->ComputeTryBlockInformation(); in RemoveDeadBlocks()
914 for (HBasicBlock* block : graph_->GetPostOrder()) { in RemoveDeadInstructions()
949 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in UpdateGraphFlags()
969 graph_->SetHasMonitorOperations(has_monitor_operations); in UpdateGraphFlags()
970 graph_->SetHasTraditionalSIMD(has_traditional_simd); in UpdateGraphFlags()
971 graph_->SetHasPredicatedSIMD(has_predicated_simd); in UpdateGraphFlags()
972 graph_->SetHasBoundsChecks(has_bounds_checks); in UpdateGraphFlags()
973 graph_->SetHasAlwaysThrowingInvokes(has_always_throwing_invokes); in UpdateGraphFlags()
980 if (!graph_->HasIrreducibleLoops()) { in Run()
998 SsaRedundantPhiElimination(graph_).Run(); in Run()