summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
diff options
context:
space:
mode:
authorTim Shen <timshen91@gmail.com>2018-07-13 23:40:00 +0000
committerTim Shen <timshen91@gmail.com>2018-07-13 23:40:00 +0000
commit9e25d5d2ce0e123b7a5c2e192420656b8336628c (patch)
treeb62a9cfe76457e587ebcabf9614e28c7e900ddf2 /llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
parent94c4512a8c6a60e544394a9d504625eb26addd0c (diff)
downloadbcm5719-llvm-9e25d5d2ce0e123b7a5c2e192420656b8336628c.tar.gz
bcm5719-llvm-9e25d5d2ce0e123b7a5c2e192420656b8336628c.zip
[LSR] If no Use is interesting, early return.
Summary: By looking at the callers of getUse(), we can see that even though IVUsers may offer uses, but they may not be interesting to LSR. It's possible that none of them is interesting. Reviewers: sanjoy Subscribers: jlebar, hiraditya, bixia, llvm-commits Differential Revision: https://reviews.llvm.org/D49049 llvm-svn: 337072
Diffstat (limited to 'llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
index 03429e9698a..fa83b48210b 100644
--- a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
@@ -5400,7 +5400,9 @@ LSRInstance::LSRInstance(Loop *L, IVUsers &IU, ScalarEvolution &SE,
CollectFixupsAndInitialFormulae();
CollectLoopInvariantFixupsAndFormulae();
- assert(!Uses.empty() && "IVUsers reported at least one use");
+ if (Uses.empty())
+ return;
+
LLVM_DEBUG(dbgs() << "LSR found " << Uses.size() << " uses:\n";
print_uses(dbgs()));
OpenPOWER on IntegriCloud