Home | History | Annotate | Download | only in Scalar

Lines Matching refs:Reductions

230     // The set of all reductions, and state tracking of possible reductions
238 // Setup to track possible reductions corresponding to the provided
239 // rerolling scale. Only reductions with a number of non-PHI instructions
242 // - A set of all possible instructions in eligible reductions.
243 // - A set of all PHIs in eligible reductions
245 // reductions.
270 // Are the two instructions both from reductions, and furthermore, from
296 "Recording pair from different reductions?");
302 // instructions in the loop, and we know which reductions were selected.
308 // The vector of all possible reductions (for any scale).
365 bool validate(ReductionTracker &Reductions);
444 ReductionTracker &Reductions);
446 ReductionTracker &Reductions);
665 ReductionTracker &Reductions) {
680 Reductions.addSLR(SLR);
1129 bool LoopReroll::DAGRootTracker::validate(ReductionTracker &Reductions) {
1139 // An array of just the possible reductions for this scale factor. When we
1147 Reductions.restrictToScale(Scale, PossibleRedSet,
1330 // within the iteration does not matter). For non-associative reductions,
1337 bool InReduction = Reductions.isPairInSame(BaseInst, RootInst);
1349 if (Reductions.isPairInSame(RootInst, Op2I))
1393 Reductions.recordPair(BaseInst, RootInst, Iter);
1559 // Validate the selected reductions. All iterations must have an isomorphic
1560 // part of the reduction chain and, for non-associative reductions, the chain
1601 // For all selected reductions, remove all parts except those in the first
1604 // reductions).
1606 // Fixup reductions to refer to the last instruction associated with the
1668 // roots, belong to simple latch code, parts of validated reductions, part of
1669 // f(%iv) or part of some f(%iv.i). If all of that is true (and all reductions
1673 ReductionTracker &Reductions) {
1682 if (!DAGRoots.validate(Reductions))
1684 if (!Reductions.validateSelected())
1689 Reductions.replaceSelected();
1736 ReductionTracker Reductions;
1737 collectPossibleReductions(L, Reductions);
1743 if (reroll(PossibleIV, L, Header, IterCount, Reductions)) {