diff options
author | Florian Hahn <flo@fhahn.com> | 2022-01-15 15:21:16 +0000 |
---|---|---|
committer | Florian Hahn <flo@fhahn.com> | 2022-01-15 15:21:16 +0000 |
commit | e00158ed5c5dfd15497751941b740f814de065ac (patch) | |
tree | 9850072cbc4c1a81133e1cb6b21de27a16e69c61 /llvm/lib/Transforms/Utils/LoopUtils.cpp | |
parent | c41ca1be7dbb38cee0284620ce1d60b71e8e04f7 (diff) | |
download | llvm-e00158ed5c5dfd15497751941b740f814de065ac.zip llvm-e00158ed5c5dfd15497751941b740f814de065ac.tar.gz llvm-e00158ed5c5dfd15497751941b740f814de065ac.tar.bz2 |
[LoopUtils] Use InstSimplifyFolder in addRuntimeChecks.
Use the InstSimplifyFolder introduced earlier to perform initial
simplification during runtime check construction.
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/LoopUtils.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Utils/LoopUtils.cpp b/llvm/lib/Transforms/Utils/LoopUtils.cpp index 93157bd..95db2fe8 100644 --- a/llvm/lib/Transforms/Utils/LoopUtils.cpp +++ b/llvm/lib/Transforms/Utils/LoopUtils.cpp @@ -22,6 +22,7 @@ #include "llvm/Analysis/BasicAliasAnalysis.h" #include "llvm/Analysis/DomTreeUpdater.h" #include "llvm/Analysis/GlobalsModRef.h" +#include "llvm/Analysis/InstSimplifyFolder.h" #include "llvm/Analysis/InstructionSimplify.h" #include "llvm/Analysis/LoopAccessAnalysis.h" #include "llvm/Analysis/LoopInfo.h" @@ -1567,7 +1568,9 @@ Value *llvm::addRuntimeChecks( auto ExpandedChecks = expandBounds(PointerChecks, TheLoop, Loc, Exp); LLVMContext &Ctx = Loc->getContext(); - IRBuilder<> ChkBuilder(Loc); + IRBuilder<InstSimplifyFolder> ChkBuilder(Ctx, + Loc->getModule()->getDataLayout()); + ChkBuilder.SetInsertPoint(Loc); // Our instructions might fold to a constant. Value *MemoryRuntimeCheck = nullptr; |