reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
707 for (auto FC0 = CandidateSet.begin(); FC0 != CandidateSet.end(); ++FC0) { 707 for (auto FC0 = CandidateSet.begin(); FC0 != CandidateSet.end(); ++FC0) { 708 assert(!LDT.isRemovedLoop(FC0->L) && 710 auto FC1 = FC0; 715 LLVM_DEBUG(dbgs() << "Attempting to fuse candidate \n"; FC0->dump(); 718 FC0->verify(); 721 if (!identicalTripCounts(*FC0, *FC1)) { 724 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 729 if (!isAdjacent(*FC0, *FC1)) { 732 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, NonAdjacent); 738 if (FC0->GuardBranch && FC1->GuardBranch && 739 !haveIdenticalGuards(*FC0, *FC1)) { 742 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 755 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 760 if (FC0->GuardBranch && !isEmptyExitBlock(*FC0)) { 760 if (FC0->GuardBranch && !isEmptyExitBlock(*FC0)) { 763 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 771 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 778 if (!dependencesAllowFusion(*FC0, *FC1)) { 780 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 785 bool BeneficialToFuse = isBeneficialFusion(*FC0, *FC1); 790 reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1, 798 LLVM_DEBUG(dbgs() << "\tFusion is performed: " << *FC0 << " and " 805 reportLoopFusion<OptimizationRemark>(*FC0, *FC1, FuseCounter); 807 FusionCandidate FusedCand(performFusion(*FC0, *FC1), &DT, &PDT, ORE); 815 CandidateSet.erase(FC0); 826 FC0 = FC1 = InsertPos.first;