diff options
author | Andrew Trick <atrick@apple.com> | 2011-12-16 02:03:48 +0000 |
---|---|---|
committer | Andrew Trick <atrick@apple.com> | 2011-12-16 02:03:48 +0000 |
commit | ca3417e9327dd2dd6f723bb0fcc7cbb9137f2d2f (patch) | |
tree | ca9edd3916f963f97a524c63e144f664cca001f0 /llvm/lib/Transforms/Utils | |
parent | 7cc3d31e15a106e132532df1dc85291817665ef2 (diff) | |
download | bcm5719-llvm-ca3417e9327dd2dd6f723bb0fcc7cbb9137f2d2f.tar.gz bcm5719-llvm-ca3417e9327dd2dd6f723bb0fcc7cbb9137f2d2f.zip |
Avoid a confusing assert for silly options: -unroll-runtime -unroll-count=1.
No need for an explicit test case for an unsupported combination of options.
llvm-svn: 146721
Diffstat (limited to 'llvm/lib/Transforms/Utils')
-rw-r--r-- | llvm/lib/Transforms/Utils/LoopUnroll.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Utils/LoopUnroll.cpp b/llvm/lib/Transforms/Utils/LoopUnroll.cpp index b96f14b1446..512b6895011 100644 --- a/llvm/lib/Transforms/Utils/LoopUnroll.cpp +++ b/llvm/lib/Transforms/Utils/LoopUnroll.cpp @@ -176,6 +176,11 @@ bool llvm::UnrollLoop(Loop *L, unsigned Count, unsigned TripCount, if (TripCount != 0 && Count > TripCount) Count = TripCount; + // Don't enter the unroll code if there is nothing to do. This way we don't + // need to support "partial unrolling by 1". + if (TripCount == 0 && Count < 2) + return false; + assert(Count > 0); assert(TripMultiple > 0); assert(TripCount == 0 || TripCount % TripMultiple == 0); |