reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/Scalar/LoopFuse.cpp
  711         for (++FC1; FC1 != CandidateSet.end(); ++FC1) {
  711         for (++FC1; FC1 != CandidateSet.end(); ++FC1) {
  711         for (++FC1; FC1 != CandidateSet.end(); ++FC1) {
  712           assert(!LDT.isRemovedLoop(FC1->L) &&
  716                      dbgs() << " with\n"; FC1->dump(); dbgs() << "\n");
  719           FC1->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,
  752           if (!isEmptyPreheader(*FC1)) {
  755             reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1,
  763             reportLoopFusion<OptimizationRemarkMissed>(*FC0, *FC1,
  768           if (FC1->GuardBranch && !isEmptyGuardBlock(*FC1)) {
  768           if (FC1->GuardBranch && !isEmptyGuardBlock(*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,
  799                             << *FC1 << "\n");
  805           reportLoopFusion<OptimizationRemark>(*FC0, *FC1, FuseCounter);
  807           FusionCandidate FusedCand(performFusion(*FC0, *FC1), &DT, &PDT, ORE);
  813           LDT.removeLoop(FC1->L);
  816           CandidateSet.erase(FC1);
  826           FC0 = FC1 = InsertPos.first;