llvm-project/llvm/lib/Transforms/Scalar
Serguei Katkov ebc9031b88 [LoopPrediction] Introduce utility function getLatchPredicateForGuard. NFC.
Factor out getting the predicate for latch condition in a guard to
utility function getLatchPredicateForGuard.

llvm-svn: 324450
2018-02-07 06:53:37 +00:00
..
ADCE.cpp [ADCE] Use MapVector for BlockInfo to make iteration order deterministic 2017-11-03 14:15:08 +00:00
AlignmentFromAssumptions.cpp [NFC] Change MemIntrinsicInst::setAlignment() to take an unsigned instead of a Constant 2018-01-12 21:33:37 +00:00
BDCE.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
CMakeLists.txt Add a new pass to speculate around PHI nodes with constant (integer) operands when profitable. 2017-11-28 11:32:31 +00:00
CallSiteSplitting.cpp [CallSiteSplitting] Fix infinite loop when recording conditions. 2018-01-26 10:36:50 +00:00
ConstantHoisting.cpp Fix out-of-order stepping behavior in programs with hoisted constants. 2017-11-09 20:01:31 +00:00
ConstantProp.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
CorrelatedValuePropagation.cpp [CVP] Don't Replace incoming values from unreachable blocks with undef. 2018-01-29 05:59:55 +00:00
DCE.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
DeadStoreElimination.cpp [DSE] Upgrade uses of MemoryIntrinic::getAlignment() to new API. (NFC) 2018-02-06 21:18:33 +00:00
DivRemPairs.cpp [DivRempairs] add a pass to optimize div/rem pairs (PR31028) 2017-09-09 13:38:18 +00:00
EarlyCSE.cpp [EarlyCSE] Salvage debug info during DCE 2018-01-09 15:08:37 +00:00
FlattenCFGPass.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Float2Int.cpp [Float2Int] Replace a ConstantRange copy with a move. Remove an extra call to MapVector::find. 2017-05-05 17:09:29 +00:00
GVN.cpp Hardware-assisted AddressSanitizer (llvm part). 2017-12-09 00:21:41 +00:00
GVNHoist.cpp [NFC] fix trivial typos in comments and documents 2018-01-29 05:17:03 +00:00
GVNSink.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
GuardWidening.cpp Guard print() functions only used by dump() functions. 2017-07-31 10:07:49 +00:00
IVUsersPrinter.cpp
IndVarSimplify.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
InductiveRangeCheckElimination.cpp Re-apply [SCEV] Fix isLoopEntryGuardedByCond usage 2018-02-05 05:49:47 +00:00
InferAddressSpaces.cpp [InferAddressSpaces] Update uses of IRBuilder memory intrinsic creation to new API 2018-02-06 20:33:36 +00:00
JumpThreading.cpp [JumpThreading][NFC] Rename LoadInst variables 2018-01-29 21:29:44 +00:00
LICM.cpp Re-commit : [LICM] Allow sinking when foldable in loop 2017-12-15 20:33:24 +00:00
LLVMBuild.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00
LoopAccessAnalysisPrinter.cpp
LoopDataPrefetch.cpp [NFC] fix trivial typos in comments 2018-01-19 10:55:29 +00:00
LoopDeletion.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
LoopDistribute.cpp Add MemorySSA as loop dependency, disabled by default [NFC]. 2017-11-21 15:45:46 +00:00
LoopIdiomRecognize.cpp [NFC] fix trivial typos in comments and documents 2018-01-29 05:17:03 +00:00
LoopInstSimplify.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-16 21:34:24 +00:00
LoopInterchange.cpp [LoopInterchange] Fix phi node ordering miscompile. 2017-10-21 13:58:37 +00:00
LoopLoadElimination.cpp Add MemorySSA as loop dependency, disabled by default [NFC]. 2017-11-21 15:45:46 +00:00
LoopPassManager.cpp [PM] Teach LoopUnroll to update the LPM infrastructure as it unrolls 2017-01-25 02:49:01 +00:00
LoopPredication.cpp [LoopPrediction] Introduce utility function getLatchPredicateForGuard. NFC. 2018-02-07 06:53:37 +00:00
LoopRerollPass.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-18 21:46:47 +00:00
LoopRotation.cpp [Debug] Add a utility to propagate dbg.value to new PHIs, NFC 2018-01-25 21:37:05 +00:00
LoopSimplifyCFG.cpp Rename WeakVH to WeakTrackingVH; NFC 2017-05-01 17:07:49 +00:00
LoopSink.cpp Add hasProfileData() to check if a function has profile data. NFC. 2017-12-22 01:33:52 +00:00
LoopStrengthReduce.cpp [LoopStrengthReduce, x86] don't add cost for a cmp that will be macro-fused (PR35681) 2018-02-05 23:43:05 +00:00
LoopUnrollPass.cpp Add hasProfileData() to check if a function has profile data. NFC. 2017-12-22 01:33:52 +00:00
LoopUnswitch.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
LoopVersioningLICM.cpp This change add's optimization remark in LoopVersioning LICM pass. 2018-01-23 09:47:28 +00:00
LowerAtomic.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
LowerExpectIntrinsic.cpp Fix builin_expect lowering bug 2017-06-07 18:32:24 +00:00
LowerGuardIntrinsic.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
MemCpyOptimizer.cpp Revert "[memcpyopt] Teach memcpyopt to optimize across basic blocks" 2017-12-28 05:10:33 +00:00
MergeICmps.cpp [MergeICmps] Handle chains with several complex BCE basic blocks. 2018-02-06 12:25:33 +00:00
MergedLoadStoreMotion.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00
NaryReassociate.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
NewGVN.cpp NewGVN: Fix PR/33367, which was causing us to delete non-copy intrinsics accidentally in some rare cases 2018-01-09 20:12:42 +00:00
PartiallyInlineLibCalls.cpp [PartiallyInlineLibCalls][x86] add TTI hook to allow sqrt inlining to depend on arg rather than result 2017-11-27 21:15:43 +00:00
PlaceSafepoints.cpp All libcalls should be considered to be GC-leaf functions. 2017-07-27 16:49:39 +00:00
Reassociate.cpp Reassociate: add global reassociation algorithm 2017-12-12 19:18:02 +00:00
Reg2Mem.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
RewriteStatepointsForGC.cpp [RS4GC] Handle call/invoke instructions as base defining values of vectors 2018-01-30 14:43:41 +00:00
SCCP.cpp [IPSCCP] Remove calls without side effects 2018-01-09 21:58:46 +00:00
SROA.cpp [NFC] fix trivial typos in comments and documents 2018-01-26 08:15:29 +00:00
Scalar.cpp [PM] port Rewrite Statepoints For GC to the new pass manager. 2017-12-15 09:32:11 +00:00
Scalarizer.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-20 21:47:29 +00:00
SeparateConstOffsetFromGEP.cpp [SeparateConstOffsetFromGEP] Preserve metadata when splitting GEPs 2018-01-31 20:17:52 +00:00
SimpleLoopUnswitch.cpp Use phi ranges to simplify code. No functionality change intended. 2017-12-30 15:27:33 +00:00
SimplifyCFGPass.cpp [SimplifyCFG] don't sink common insts too soon (PR34603) 2017-12-14 22:05:20 +00:00
Sink.cpp [Sink] Really really fix predicate in legality check 2018-01-11 21:28:57 +00:00
SpeculateAroundPHIs.cpp Add a new pass to speculate around PHI nodes with constant (integer) operands when profitable. 2017-11-28 11:32:31 +00:00
SpeculativeExecution.cpp Revert r301950: SpeculativeExecution: Stop using whitelist for costs 2017-05-10 12:30:07 +00:00
StraightLineStrengthReduce.cpp [Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-10-27 01:09:08 +00:00
StructurizeCFG.cpp Revert r321751, "StructurizeCFG: Fix broken backedge detection" 2018-01-24 18:02:05 +00:00
TailRecursionElimination.cpp Remove redundant includes from lib/Transforms. 2017-12-13 21:31:01 +00:00