1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 13:02:52 +02:00
llvm-mirror/test/Transforms
Matthew Simpson 658ae0c60e [LV] Extend trunc optimization to all IVs with constant integer steps
This patch extends the optimization of truncations whose operand is an
induction variable with a constant integer step. Previously we were only
applying this optimization to the primary induction variable. However, the cost
model assumes the optimization is applied to the truncation of all integer
induction variables (even regardless of step type). The transformation is now
applied to the other induction variables, and I've updated the cost model to
ensure it is better in sync with the transformation we actually perform.

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

llvm-svn: 294967
2017-02-13 16:48:00 +00:00
..
ADCE
AddDiscriminators Encode duplication factor from loop vectorization and loop unrolling to discriminator. 2017-02-10 21:09:07 +00:00
AlignmentFromAssumptions
ArgumentPromotion [PM] Port ArgumentPromotion to the new pass manager. 2017-02-09 23:46:27 +00:00
AtomicExpand
BBVectorize Introduce -unroll-partial-threshold to separate PartialThreshold from Threshold in loop unorller. 2017-01-17 23:39:33 +00:00
BDCE
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantHoisting
ConstantMerge
ConstProp
Coroutines [coroutines] Spill the result of the invoke instruction correctly 2017-01-25 02:25:54 +00:00
CorrelatedValuePropagation
CountingFunctionInserter
CrossDSOCFI
DCE
DeadArgElim
DeadStoreElimination
EarlyCSE [EarlyCSE] Don't DSE across readnone functions that may throw 2017-01-17 20:15:47 +00:00
EliminateAvailableExternally
Float2Int
ForcedFunctionAttrs
FunctionAttrs
FunctionImport FunctionImport: Remove the -disable-force-link-odr flag and change importFunctions to never force link. 2017-02-02 18:42:25 +00:00
GCOVProfiling
GlobalDCE [PH] Replace uses of AssertingVH from members of analysis results with 2017-01-24 12:55:57 +00:00
GlobalMerge
GlobalOpt Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
GlobalSplit
GuardWidening
GVN Do not propagate DebugLoc across basic blocks 2017-01-31 20:57:13 +00:00
GVNHoist Fix my GVNHoist test case from r294317 2017-02-07 17:35:53 +00:00
IndVarSimplify
InferAddressSpaces InferAddressSpaces: Handle more cases with constant select operands 2017-02-02 03:37:22 +00:00
InferFunctionAttrs
Inline [Inliner] Fold analysis remarks into missed remarks 2017-01-30 16:22:45 +00:00
InstCombine [InstCombine] fold icmp sgt/slt (add nsw X, C2), C --> icmp sgt/slt X, (C - C2) 2017-02-12 16:40:30 +00:00
InstMerge Remove the load hoisting code of MLSM, it is completely subsumed by GVNHoist 2017-01-24 19:55:36 +00:00
InstSimplify [ValueTracking] emit a remark when we detect a conflicting assumption (PR31809) 2017-02-06 18:26:06 +00:00
InterleavedAccess [ARM] Don't lower f16 interleaved accesses. 2017-02-11 01:53:00 +00:00
Internalize
IPConstantProp [IPCP] Don't propagate return value for naked functions. 2017-02-04 19:44:14 +00:00
IRCE [IRCE] Add a missing invariant check 2017-02-07 23:59:07 +00:00
JumpThreading [JumpThreading] Thread through guards 2017-02-09 19:40:22 +00:00
LCSSA
LICM [LICM] Hoist loads that are dominated by invariant.start intrinsic, and are invariant in the loop. 2017-02-02 13:22:03 +00:00
LoadCombine [LoadCombine] Change test to not use instcombine. 2017-02-10 00:44:08 +00:00
LoadStoreVectorizer
LoopDataPrefetch
LoopDeletion [PM] Teach LoopDeletion to correctly update the LPM when loops are 2017-01-18 02:41:26 +00:00
LoopDistribute Move test of lazy BFI with ORE to a generic directory 2017-01-13 00:16:23 +00:00
LoopIdiom Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
LoopInterchange
LoopLoadElim [PM] Port LoopLoadElimination to the new pass manager and wire it into 2017-01-27 01:32:26 +00:00
LoopPredication [Guards] Introduce loop-predication pass 2017-01-25 16:00:44 +00:00
LoopReroll
LoopRotate
LoopSimplify Make a test actually test what it set out to test. 2017-01-12 03:49:07 +00:00
LoopSimplifyCFG
LoopStrengthReduce The patch fixes r294821 2017-02-11 05:39:00 +00:00
LoopUnroll AMDGPU: Don't unroll for private with dynamic allocas 2017-02-03 19:36:00 +00:00
LoopUnswitch [LoopUnswitch] Remove BFI usage (dead code) 2017-02-10 06:12:06 +00:00
LoopVectorize [LV] Extend trunc optimization to all IVs with constant integer steps 2017-02-13 16:48:00 +00:00
LoopVersioning
LoopVersioningLICM
LowerAtomic
LowerExpectIntrinsic
LowerGuardIntrinsic
LowerInvoke
LowerSwitch
LowerTypeTests LowerTypeTests: Ignore external globals with type metadata. 2017-01-26 00:32:15 +00:00
Mem2Reg
MemCpyOpt [MemCpyOpt] Don't sink LoadInst below possible clobber. 2016-12-27 17:58:12 +00:00
MergeFunc MergeFunctions: Preserve debug info in thunks, under option -mergefunc-preserve-debug-info 2017-01-21 02:02:56 +00:00
MetaRenamer
NameAnonGlobals
NaryReassociate
NewGVN NewGVN: Update a number of xfailed tests to either be correct or note 2017-02-12 23:28:06 +00:00
ObjCARC
PartiallyInlineLibCalls Add positive test for sqrt "partial inlining". NFC. 2017-01-04 21:24:56 +00:00
PGOProfile Fix some broken CHECK lines. 2017-01-22 20:28:56 +00:00
PhaseOrdering
PlaceSafepoints
PreISelIntrinsicLowering
PruneEH
Reassociate
Reg2Mem
RewriteStatepointsForGC
SafeStack
SampleProfile Fix the samplepgo indirect call promotion bug: we should not promote a direct call. 2017-02-06 23:33:15 +00:00
Scalarizer
SCCP [SCCP] Teach the pass how to handle div with overdefined operands. 2017-01-19 23:07:51 +00:00
SeparateConstOffsetFromGEP
SimplifyCFG [InstCombine] Merge DebugLoc when speculatively hoisting store instruction 2017-01-28 07:05:43 +00:00
Sink
SLPVectorizer [SLP] Fix for PR31690: Allow using of extra values in horizontal 2017-02-13 08:01:26 +00:00
SpeculativeExecution
SROA
StraightLineStrengthReduce
StripDeadPrototypes
StripSymbols
StructurizeCFG [StructurizeCfg] Update dominator info. 2017-01-10 02:50:47 +00:00
TailCallElim
ThinLTOBitcodeWriter ThinLTOBitcodeWriter: Strip debug info from merged module. 2017-02-08 20:44:00 +00:00
Util PredicateInfo: Handle critical edges 2017-02-12 22:12:20 +00:00
WholeProgramDevirt WholeProgramDevirt: Check that VCP candidate functions are defined before evaluating them. 2017-02-09 23:46:26 +00:00