llvm-6502/lib/Transforms/Scalar
Kevin Qin 994b4c784f Introduce runtime unrolling disable matadata and use it to mark the scalar loop from vectorization.
Runtime unrolling is an expensive optimization which can bring benefit
only if the loop is hot and iteration number is relatively large enough.
For some loops, we know they are not worth to be runtime unrolled.
The scalar loop from vectorization is one of the cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231631 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-09 06:14:18 +00:00
..
ADCE.cpp [ADCE] Don't indent inside an anonymous namespace 2015-02-16 18:08:00 +00:00
AlignmentFromAssumptions.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
BDCE.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
CMakeLists.txt Add a new pass "Loop Interchange" 2015-03-06 10:11:25 +00:00
ConstantHoisting.cpp [optnone] Skip pass Constant Hoisting on optnone functions. 2015-02-14 15:11:48 +00:00
ConstantProp.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
CorrelatedValuePropagation.cpp Make use of @llvm.assume from LazyValueInfo 2014-09-07 20:29:59 +00:00
DCE.cpp [PM] Separate the TargetLibraryInfo object from the immutable pass. 2015-01-15 10:41:28 +00:00
DeadStoreElimination.cpp [PM] Move TargetLibraryInfo into the Analysis library. 2015-01-15 02:16:27 +00:00
EarlyCSE.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
FlattenCFGPass.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
GVN.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
InductiveRangeCheckElimination.cpp IRCE: only touch loops that have been shown to have a high 2015-02-26 08:56:04 +00:00
IndVarSimplify.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
JumpThreading.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LICM.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LLVMBuild.txt Update libdeps since TLI was moved from Target to Analysis in r226078. 2015-01-15 05:21:00 +00:00
LoadCombine.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LoopDeletion.cpp [PM] Split the LoopInfo object apart from the legacy pass, creating 2015-01-17 14:16:18 +00:00
LoopIdiomRecognize.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LoopInstSimplify.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LoopInterchange.cpp LoopInterchange: Remove empty method. 2015-03-06 19:37:26 +00:00
LoopRerollPass.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
LoopRotation.cpp LoopRotate: When reconstructing loop simplify form don't split edges from indirectbrs. 2015-02-20 20:49:25 +00:00
LoopStrengthReduce.cpp LSR: Move set instead of copying. NFC. 2015-02-19 17:19:43 +00:00
LoopUnrollPass.cpp Introduce runtime unrolling disable matadata and use it to mark the scalar loop from vectorization. 2015-03-09 06:14:18 +00:00
LoopUnswitch.cpp Transforms: Canonicalize access to function attributes, NFC 2015-02-14 01:11:29 +00:00
LowerAtomic.cpp IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
LowerExpectIntrinsic.cpp [PM] Port LowerExpectIntrinsic to the new pass manager. 2015-01-24 11:13:02 +00:00
Makefile
MemCpyOptimizer.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
MergedLoadStoreMotion.cpp Fixed a bug in store sinking. 2015-02-17 13:10:05 +00:00
PartiallyInlineLibCalls.cpp [multiversion] Thread a function argument through all the callers of the 2015-02-01 12:01:35 +00:00
PlaceSafepoints.cpp PlaceSafepoints: use IRBuilder helpers 2015-02-26 00:35:56 +00:00
Reassociate.cpp Reassociate: cannot negate a INT_MIN value 2015-02-11 19:54:44 +00:00
Reg2Mem.cpp Standardize {pred,succ,use,user}_empty() 2015-01-13 03:46:47 +00:00
RewriteStatepointsForGC.cpp [RewriteStatepointsForGC] Fix a relocation bug w.r.t values defined by invoke instructions 2015-03-04 00:13:52 +00:00
SampleProfile.cpp [PM] Split the LoopInfo object apart from the legacy pass, creating 2015-01-17 14:16:18 +00:00
Scalar.cpp Add a new pass "Loop Interchange" 2015-03-06 10:11:25 +00:00
Scalarizer.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
ScalarReplAggregates.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SCCP.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SeparateConstOffsetFromGEP.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SimplifyCFGPass.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
Sink.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SROA.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
StraightLineStrengthReduce.cpp Fixing a -Wsign-compare warning; NFC 2015-02-04 14:01:08 +00:00
StructurizeCFG.cpp StructurizeCFG: Remove obsolete fix for loop backedge detection 2015-02-04 20:49:47 +00:00
TailRecursionElimination.cpp Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00