summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-08-06 00:01:56 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-08-06 00:01:56 +0000
commitcf181867a6f9b36f29d95930486382257626ae0f (patch)
treeff839036ba80163f9af9be6846fdd8101b7ee8e7 /llvm/lib/Transforms
parentbbe3288b06230eaadd17d4adad16efcdf766ed24 (diff)
downloadbcm5719-llvm-cf181867a6f9b36f29d95930486382257626ae0f.tar.gz
bcm5719-llvm-cf181867a6f9b36f29d95930486382257626ae0f.zip
[IRCE] Preserve loop-simplify form
Fixes PR28764. Right now there is no way to test this, but (as mentioned on the PR) with Michael Zolotukhin's yet to be checked in LoopSimplify verfier, 8 of the llvm-lit tests for IRCE crash. llvm-svn: 277891
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r--llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp b/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
index 3226efb86d2..4cbf2112e1e 100644
--- a/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
+++ b/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
@@ -66,6 +66,7 @@
#include "llvm/Transforms/Utils/Cloning.h"
#include "llvm/Transforms/Utils/LoopUtils.h"
#include "llvm/Transforms/Utils/SimplifyIndVar.h"
+#include "llvm/Transforms/Utils/LoopSimplify.h"
#include "llvm/Transforms/Utils/UnrollLoop.h"
using namespace llvm;
@@ -1278,6 +1279,7 @@ bool LoopConstrainer::run() {
DT.recalculate(F);
formLCSSARecursively(OriginalLoop, DT, &LI, &SE);
+ simplifyLoop(&OriginalLoop, &DT, &LI, &SE, nullptr, true);
return true;
}
OpenPOWER on IntegriCloud