Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:Anti

1 //===----- AggressiveAntiDepBreaker.cpp - Anti-dep breaker ----------------===//
11 // implements register anti-dependence breaking during post-RA
12 // scheduling. It attempts to break all anti-dependencies within a
36 cl::desc("Debug control for aggressive anti-dep breaker"),
40 cl::desc("Debug control for aggressive anti-dep breaker"),
258 /// AntiDepEdges - Return in Edges the anti- and output- dependencies
264 if ((P->getKind() == SDep::Anti) || (P->getKind() == SDep::Output)) {
286 // In the case of a latency tie, prefer an anti-dependency edge over
289 (NextDepth == PredTotalLatency && P->getKind() == SDep::Anti)) {
547 // break the anti-dependence.
705 /// BreakAntiDependencies - Identifiy anti-dependencies within the
737 // break critical-path anti-dependencies.
754 DEBUG(dbgs() << "\n===== Aggressive anti-dependency breaking\n");
763 // Attempt to break anti-dependence edges. Walk the instructions
775 DEBUG(dbgs() << "Anti: ");
784 // The dependence edges that represent anti- and output-
801 // but don't cause any anti-dependence breaking themselves)
803 // Attempt to break each anti-dependency...
808 if ((Edge->getKind() != SDep::Anti) &&
813 assert(AntiDepReg != 0 && "Anti-dependence on reg0?");
816 // Don't break anti-dependencies on non-allocatable registers.
820 // Don't break anti-dependencies for critical path registers
825 // If the anti-dep register liveness "passes-thru", then
831 // No anti-dep breaking for implicit deps
840 // it anti-depends on, don't bother breaking the
841 // anti-dependency since those edges would prevent such
846 // same register as the anti-dependency, don't attempt to
851 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) :
859 if ((P->getSUnit() == NextSU) && (P->getKind() != SDep::Anti) &&
888 // Look for a suitable register to use to break the anti-dependence.
891 DEBUG(dbgs() << "\tBreaking anti-dependence edge on "
916 // information related to the anti-dependency register, make