@@ -683,22 +683,6 @@ class InnerLoopVectorizer {
683
683
ReductionResumeValues;
684
684
};
685
685
686
- class InnerLoopUnroller : public InnerLoopVectorizer {
687
- public:
688
- InnerLoopUnroller (Loop *OrigLoop, PredicatedScalarEvolution &PSE,
689
- LoopInfo *LI, DominatorTree *DT,
690
- const TargetLibraryInfo *TLI,
691
- const TargetTransformInfo *TTI, AssumptionCache *AC,
692
- OptimizationRemarkEmitter *ORE, unsigned UnrollFactor,
693
- LoopVectorizationLegality *LVL,
694
- LoopVectorizationCostModel *CM, BlockFrequencyInfo *BFI,
695
- ProfileSummaryInfo *PSI, GeneratedRTChecks &Check)
696
- : InnerLoopVectorizer(OrigLoop, PSE, LI, DT, TLI, TTI, AC, ORE,
697
- ElementCount::getFixed (1 ),
698
- ElementCount::getFixed(1 ), UnrollFactor, LVL, CM,
699
- BFI, PSI, Check) {}
700
- };
701
-
702
686
// / Encapsulate information regarding vectorization of a loop and its epilogue.
703
687
// / This information is meant to be updated and used across two stages of
704
688
// / epilogue vectorization.
@@ -10107,8 +10091,9 @@ bool LoopVectorizePass::processLoop(Loop *L) {
10107
10091
assert (IC > 1 && " interleave count should not be 1 or 0" );
10108
10092
// If we decided that it is not legal to vectorize the loop, then
10109
10093
// interleave it.
10110
- InnerLoopUnroller Unroller (L, PSE, LI, DT, TLI, TTI, AC, ORE, IC, &LVL,
10111
- &CM, BFI, PSI, Checks);
10094
+ InnerLoopVectorizer Unroller (
10095
+ L, PSE, LI, DT, TLI, TTI, AC, ORE, ElementCount::getFixed (1 ),
10096
+ ElementCount::getFixed (1 ), IC, &LVL, &CM, BFI, PSI, Checks);
10112
10097
10113
10098
VPlan &BestPlan = LVP.getPlanFor (VF.Width );
10114
10099
LVP.executePlan (VF.Width , IC, BestPlan, Unroller, DT, false );
0 commit comments