mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
Do not restrict interleaved unrolling to small loops, depending on the target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231528 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -4564,6 +4564,14 @@ LoopVectorizationCostModel::selectUnrollFactor(bool OptForSize,
|
||||
return SmallUF;
|
||||
}
|
||||
|
||||
// Unroll if this is a large loop (small loops are already dealt with by this
|
||||
// point) that could benefit from interleaved unrolling.
|
||||
bool HasReductions = (Legal->getReductionVars()->size() > 0);
|
||||
if (TTI.enableAggressiveInterleaving(HasReductions)) {
|
||||
DEBUG(dbgs() << "LV: Unrolling to expose ILP.\n");
|
||||
return UF;
|
||||
}
|
||||
|
||||
DEBUG(dbgs() << "LV: Not Unrolling.\n");
|
||||
return 1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user