llvm-project/llvm/lib/Transforms/Scalar
Max Kazantsev 2bb95e7c76 [GuardWidening] Support widening of explicitly expressed guards
This patch adds support of guards expressed in explicit form via
`widenable_condition` in Guard Widening pass.

Differential Revision: https://reviews.llvm.org/D56075
Reviewed By: reames

llvm-svn: 353932
2019-02-13 09:56:30 +00:00
..
ADCE.cpp Move DomTreeUpdater from IR to Analysis 2019-02-06 02:52:52 +00:00
AlignmentFromAssumptions.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BDCE.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CMakeLists.txt Default lowering for experimental.widenable.condition 2019-01-31 09:10:17 +00:00
CallSiteSplitting.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ConstantHoisting.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ConstantProp.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CorrelatedValuePropagation.cpp Move DomTreeUpdater from IR to Analysis 2019-02-06 02:52:52 +00:00
DCE.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DeadStoreElimination.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
DivRemPairs.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
EarlyCSE.cpp [EarlyCSE & MSSA] Cleanup special handling for removing MemoryAccesses. 2019-01-31 21:12:41 +00:00
FlattenCFGPass.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Float2Int.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GVN.cpp Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
GVNHoist.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GVNSink.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GuardWidening.cpp [GuardWidening] Support widening of explicitly expressed guards 2019-02-13 09:56:30 +00:00
IVUsersPrinter.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IndVarSimplify.cpp [IndVars] Fix corner case with unreachable Phi inputs. PR40454 2019-02-12 09:59:44 +00:00
InductiveRangeCheckElimination.cpp Enable IRCE for narrow latch by defailt 2019-01-30 11:25:12 +00:00
InferAddressSpaces.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InstSimplifyPass.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
JumpThreading.cpp Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
LICM.cpp [LICM] Cap the clobbering calls in LICM. 2019-02-12 23:05:40 +00:00
LLVMBuild.txt Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopAccessAnalysisPrinter.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopDataPrefetch.cpp [opaque pointer types] Pass function types to CallInst creation. 2019-02-01 20:43:25 +00:00
LoopDeletion.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopDistribute.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopIdiomRecognize.cpp [LoopIdiomRecognize] @llvm.dbg values shouldn't affect the transformation. 2019-02-03 20:33:20 +00:00
LoopInstSimplify.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopInterchange.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopLoadElimination.cpp [MemorySSA & LoopPassManager] Add remaining book keeping [NFCI]. 2019-02-12 23:48:02 +00:00
LoopPassManager.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopPredication.cpp [LoopPredication] Support guards expressed as branches by widenable condition 2019-01-22 11:49:06 +00:00
LoopRerollPass.cpp [LoopReroll] Fix reroll root legality checking. 2019-02-12 00:33:25 +00:00
LoopRotation.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopSimplifyCFG.cpp [LoopSimplifyCFG] Re-enable const branch folding by default 2019-02-13 06:12:48 +00:00
LoopSink.cpp [LICM&MSSA] Limit store hoisting. 2019-02-11 19:07:15 +00:00
LoopStrengthReduce.cpp [NFC] Rename DontDeleteUselessPHIs --> KeepOneInputPHIs 2019-02-12 07:09:29 +00:00
LoopUnrollAndJamPass.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopUnrollPass.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopUnswitch.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopVersioningLICM.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LowerAtomic.cpp [opaque pointer types] Pass value type to LoadInst creation. 2019-02-01 20:44:24 +00:00
LowerExpectIntrinsic.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LowerGuardIntrinsic.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LowerWidenableCondition.cpp Update more files added with the old header to the new one. 2019-02-11 08:25:56 +00:00
MakeGuardsExplicit.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MemCpyOptimizer.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
MergeICmps.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MergedLoadStoreMotion.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
NaryReassociate.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
NewGVN.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PartiallyInlineLibCalls.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PlaceSafepoints.cpp [CallSite removal] Migrate the statepoint GC infrastructure to use the 2019-02-11 07:42:30 +00:00
Reassociate.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Reg2Mem.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RewriteStatepointsForGC.cpp [CallSite removal] Migrate the statepoint GC infrastructure to use the 2019-02-11 07:42:30 +00:00
SCCP.cpp [CallSite removal] Migrate ConstantFolding APIs and implementation to 2019-02-11 07:51:44 +00:00
SROA.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
Scalar.cpp Default lowering for experimental.widenable.condition 2019-01-31 09:10:17 +00:00
Scalarizer.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
SeparateConstOffsetFromGEP.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SimpleLoopUnswitch.cpp [NFC] Rename DontDeleteUselessPHIs --> KeepOneInputPHIs 2019-02-12 07:09:29 +00:00
SimplifyCFGPass.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Sink.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SpeculateAroundPHIs.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SpeculativeExecution.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
StraightLineStrengthReduce.cpp [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
StructurizeCFG.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TailRecursionElimination.cpp Move DomTreeUpdater from IR to Analysis 2019-02-06 02:52:52 +00:00
WarnMissedTransforms.cpp Revert rL352238. 2019-01-25 21:12:08 +00:00