diff options
| author | Davide Italiano <davide@freebsd.org> | 2017-08-28 19:50:55 +0000 |
|---|---|---|
| committer | Davide Italiano <davide@freebsd.org> | 2017-08-28 19:50:55 +0000 |
| commit | 9a09ae448dc95fc4a46de4d194951b102129fa7f (patch) | |
| tree | f19bb17f91abcfee7757ed060e9d3f4845b8d546 /llvm/lib/Transforms/Scalar | |
| parent | afcff2d0d914b4c1f07aca3a35de0d72a35c2b00 (diff) | |
| download | bcm5719-llvm-9a09ae448dc95fc4a46de4d194951b102129fa7f.tar.gz bcm5719-llvm-9a09ae448dc95fc4a46de4d194951b102129fa7f.zip | |
[LoopUnroll] Add a cl::opt to force peeling, for testing purposes.
Will be used to test the patch proposed in D37153.
llvm-svn: 311915
Diffstat (limited to 'llvm/lib/Transforms/Scalar')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp index fb50a3562ac..1008f2c606b 100644 --- a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp +++ b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp @@ -80,6 +80,10 @@ static cl::opt<unsigned> UnrollFullMaxCount( cl::desc( "Set the max unroll count for full unrolling, for testing purposes")); +static cl::opt<unsigned> UnrollPeelCount( + "unroll-peel-count", cl::Hidden, + cl::desc("Set the unroll peeling count, for testing purposes")); + static cl::opt<bool> UnrollAllowPartial("unroll-allow-partial", cl::Hidden, cl::desc("Allows loops to be partially unrolled until " @@ -183,6 +187,8 @@ static TargetTransformInfo::UnrollingPreferences gatherUnrollingPreferences( UP.MaxCount = UnrollMaxCount; if (UnrollFullMaxCount.getNumOccurrences() > 0) UP.FullUnrollMaxCount = UnrollFullMaxCount; + if (UnrollPeelCount.getNumOccurrences() > 0) + UP.PeelCount = UnrollPeelCount; if (UnrollAllowPartial.getNumOccurrences() > 0) UP.Partial = UnrollAllowPartial; if (UnrollAllowRemainder.getNumOccurrences() > 0) |

