Lines Matching refs:analysis_info
790 bool HLoopOptimization::TryUnrollingForBranchPenaltyReduction(LoopAnalysisInfo* analysis_info, in TryUnrollingForBranchPenaltyReduction() argument
792 if (analysis_info->GetNumberOfExits() > 1) { in TryUnrollingForBranchPenaltyReduction()
796 uint32_t unrolling_factor = arch_loop_helper_->GetScalarUnrollingFactor(analysis_info); in TryUnrollingForBranchPenaltyReduction()
806 HLoopInformation* loop_info = analysis_info->GetLoopInfo(); in TryUnrollingForBranchPenaltyReduction()
819 bool HLoopOptimization::TryPeelingForLoopInvariantExitsElimination(LoopAnalysisInfo* analysis_info, in TryPeelingForLoopInvariantExitsElimination() argument
821 HLoopInformation* loop_info = analysis_info->GetLoopInfo(); in TryPeelingForLoopInvariantExitsElimination()
826 if (analysis_info->GetNumberOfInvariantExits() == 0) { in TryPeelingForLoopInvariantExitsElimination()
848 bool HLoopOptimization::TryFullUnrolling(LoopAnalysisInfo* analysis_info, bool generate_code) { in TryFullUnrolling() argument
850 int64_t trip_count = analysis_info->GetTripCount(); in TryFullUnrolling()
853 !arch_loop_helper_->IsFullUnrollingBeneficial(analysis_info)) { in TryFullUnrolling()
877 HLoopInformation* loop_info = analysis_info->GetLoopInfo(); in TryFullUnrolling()
896 LoopAnalysisInfo analysis_info(loop_info); in TryPeelingAndUnrolling() local
897 LoopAnalysis::CalculateLoopBasicProperties(loop_info, &analysis_info, trip_count); in TryPeelingAndUnrolling()
899 if (analysis_info.HasInstructionsPreventingScalarOpts() || in TryPeelingAndUnrolling()
900 arch_loop_helper_->IsLoopNonBeneficialForScalarOpts(&analysis_info)) { in TryPeelingAndUnrolling()
904 if (!TryFullUnrolling(&analysis_info, /*generate_code*/ false) && in TryPeelingAndUnrolling()
905 !TryPeelingForLoopInvariantExitsElimination(&analysis_info, /*generate_code*/ false) && in TryPeelingAndUnrolling()
906 !TryUnrollingForBranchPenaltyReduction(&analysis_info, /*generate_code*/ false)) { in TryPeelingAndUnrolling()
915 return TryFullUnrolling(&analysis_info) || in TryPeelingAndUnrolling()
916 TryPeelingForLoopInvariantExitsElimination(&analysis_info) || in TryPeelingAndUnrolling()
917 TryUnrollingForBranchPenaltyReduction(&analysis_info); in TryPeelingAndUnrolling()