llvm-project/llvm/lib/Transforms/Utils
Florian Hahn 52436a587e [LoopUnroll] Simplify induction variables after peeling too.
Loop peeling also has an impact on the induction variables, so we should
benefit from induction variable simplification after peeling too.

Reviewers: sanjoy, bogner, mzolotukhin, efriedma

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D43878

llvm-svn: 328301
2018-03-23 10:38:12 +00:00
..
ASanStackFrameLayout.cpp [asan] Add a full redzone after every stack variable 2017-11-18 01:13:18 +00:00
AddDiscriminators.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-17 21:27:42 +00:00
BasicBlockUtils.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
BreakCriticalEdges.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
BuildLibCalls.cpp [InstCombine] Missed optimization in math expression: sin(x) / cos(x) => tan(x) 2018-01-11 06:33:00 +00:00
BypassSlowDivision.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
CMakeLists.txt Move MetaRenamer from Transforms/UTils to Transforms/IPO since it implements part of IPO.h 2018-03-22 15:57:47 +00:00
CallPromotionUtils.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
CloneFunction.cpp [CloneFunction] Preserve DT in DuplicateInstructionsInSplitBetween. 2018-03-22 11:38:53 +00:00
CloneModule.cpp Pass a module reference to CloneModule. 2018-02-14 19:50:40 +00:00
CodeExtractor.cpp [SimplifyCFG] Create attribute for fuzzing-specific optimizations. 2018-03-22 17:07:51 +00:00
CtorUtils.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
DemoteRegToStack.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
EntryExitInstrumenter.cpp EntryExitInstrumenter: set DebugLocs on the inserted call instructions (PR35412) 2017-11-28 18:44:26 +00:00
EscapeEnumerator.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
Evaluator.cpp [Evaluator] Evaluate load/store with bitcast 2018-03-13 10:19:50 +00:00
FlattenCFG.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
FunctionComparator.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-11 21:41:43 +00:00
FunctionImportUtils.cpp [ThinLTO] Clear dllimport when setting dso_local. 2018-03-13 15:24:51 +00:00
GlobalStatus.cpp [GlobalOpt] Fix exponential compile-time with selects. 2018-01-31 20:42:25 +00:00
ImportedFunctionsInliningStatistics.cpp [ThinLTO] Correct counting of functions in inliner stats 2017-03-24 17:59:06 +00:00
InlineFunction.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
InstructionNamer.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
IntegerDivision.cpp
LCSSA.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
LLVMBuild.txt
LibCallsShrinkWrap.cpp [Dominators] Remove verifyDomTree and add some verifying for Post Dom Trees 2018-02-28 11:00:08 +00:00
Local.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
LoopSimplify.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
LoopUnroll.cpp [LoopUnroll] Simplify induction variables after peeling too. 2018-03-23 10:38:12 +00:00
LoopUnrollPeel.cpp [LoopUnroll] Peel off iterations if it makes conditions true/false. 2018-03-15 21:34:43 +00:00
LoopUnrollRuntime.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
LoopUtils.cpp [MustExecute] Move isGuaranteedToExecute and related rourtines to Analysis 2018-03-20 22:45:23 +00:00
LoopVersioning.cpp
LowerInvoke.cpp
LowerMemIntrinsics.cpp [LowerMemIntrinsics] Update uses of deprecated MemIntrinsic::getAlignment API (NFC) 2018-02-05 22:23:58 +00:00
LowerSwitch.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-21 00:57:46 +00:00
Mem2Reg.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-26 00:55:39 +00:00
ModuleUtils.cpp ModuleUtils: Stop using comdat members to generate unique module ids. 2017-10-05 21:54:53 +00:00
NameAnonGlobals.cpp
OrderedInstructions.cpp Remove unneeded else from OrderedInstructions::dominates. 2017-06-29 17:01:03 +00:00
PredicateInfo.cpp [PredicateInfo] Add comment about why we require stable sort 2017-11-17 00:43:24 +00:00
PromoteMemoryToRegister.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
SSAUpdater.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
SanitizerStats.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SimplifyCFG.cpp [SimplifyCFG] Create attribute for fuzzing-specific optimizations. 2018-03-22 17:07:51 +00:00
SimplifyIndVar.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
SimplifyInstructions.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
SimplifyLibCalls.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
SplitModule.cpp Pass a module reference to CloneModule. 2018-02-14 19:50:40 +00:00
StripGCRelocates.cpp Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
StripNonLineTableDebugInfo.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SymbolRewriter.cpp Mark all library options as hidden. 2017-12-01 00:53:10 +00:00
UnifyFunctionExitNodes.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
Utils.cpp Move the initialization of the Meta Renamer pass over to IPO along with the rest of it that was moved in r328209 2018-03-22 19:36:54 +00:00
VNCoercion.cpp [IR] Make use of Type::isPtrOrPtrVectorTy/isIntOrIntVectorTy/isFPOrFPVectorTy to shorten code. NFC 2017-07-09 07:04:00 +00:00
ValueMapper.cpp Teach ValueMapper to use ODR uniqued types when available 2018-01-30 20:16:32 +00:00