1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 13:33:37 +02:00
llvm-mirror/test/Analysis
John Brawn c944a4af03 [LoopUnroll] Keep the loop test only on the first iteration of max-or-zero loops
When we have a loop with a known upper bound on the number of iterations, and
furthermore know that either the number of iterations will be either exactly
that upper bound or zero, then we can fully unroll up to that upper bound
keeping only the first loop test to check for the zero iteration case.

Most of the work here is in plumbing this 'max-or-zero' information from the
part of scalar evolution where it's detected through to loop unrolling. I've
also gone for the safe default of 'false' everywhere but howManyLessThans which
could probably be improved.

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

llvm-svn: 284818
2016-10-21 11:08:48 +00:00
..
AliasSet [AliasSetTracker] Add support for memcpy and memmove. 2016-10-19 19:09:03 +00:00
AssumptionCache
BasicAA BasicAA should look through functions with returned arguments 2016-07-11 01:32:20 +00:00
BlockFrequencyInfo [BFI] Add new LazyBFI analysis pass 2016-07-13 05:01:48 +00:00
BranchProbabilityInfo Enhance calcColdCallHeuristics for InvokeInst 2016-09-23 17:26:14 +00:00
CallGraph [CG] Add a new pass manager printer pass for the old call graph and 2016-03-10 11:24:11 +00:00
CFLAliasAnalysis [CFLAA] Remove modref queries from CFLAA. 2016-08-01 18:47:28 +00:00
CostModel [CostModel][X86] Fixed AVX1/AVX512 sdiv/udiv uniformconst costs for 256/512 bit integer vectors 2016-10-20 18:00:35 +00:00
Delinearization [SCEV] Consider delinearization pattern with extension with identity factor 2016-10-17 11:56:26 +00:00
DemandedBits Port DemandedBits to the new pass manager. 2016-04-18 23:55:01 +00:00
DependenceAnalysis [DependenceAnalysis] Check if result of getConstantPart is null 2016-04-04 18:13:18 +00:00
DivergenceAnalysis NVPTX: Remove the legacy ptx intrinsics 2016-07-07 16:40:17 +00:00
DominanceFrontier Another fix the testcase introduced by r261903 - Add the missing matches 2016-02-26 03:41:47 +00:00
Dominators Remove useless pass from the pipeline in test/Analysis/Dominators/2007-01-14-BreakCritEdges.ll. 2016-07-25 16:27:34 +00:00
GlobalsModRef Make GlobalsAA ignore dead constant expressions. 2016-10-04 00:03:55 +00:00
LazyCallGraph [LCG] Spell the printing pass pipeline name for the lazy call graph 2016-03-10 11:24:06 +00:00
Lint
LoopAccessAnalysis [Loop Vectorizer] Fixed memory confilict checks. 2016-08-28 08:53:53 +00:00
LoopInfo
MemoryDependenceAnalysis
PostDominators Introduce analysis pass to compute PostDominators in the new pass manager. NFC 2016-02-25 17:54:07 +00:00
ProfileSummary Reapply r271728 after adding move cobstructor for ProfileSummaryInfo 2016-06-03 22:54:26 +00:00
RegionInfo Introduce RegionInfoAnalysis, which compute Region Tree in the new PassManager. NFC 2016-02-25 17:54:25 +00:00
ScalarEvolution [LoopUnroll] Keep the loop test only on the first iteration of max-or-zero loops 2016-10-21 11:08:48 +00:00
ScopedNoAliasAA [ScopedNoAliasAA] Make test basic.ll less confusing 2016-03-07 17:49:10 +00:00
TypeBasedAliasAnalysis [PM/AA] Wire up TBAA to the new pass manager's registry and test it. 2016-02-20 04:04:52 +00:00
ValueTracking [ValueTracking] Fix crash in GetPointerBaseWithConstantOffset() 2016-10-07 14:23:29 +00:00
alias-analysis-uses.ll Add an "addUsedAAAnalyses" helper function 2016-02-09 01:21:57 +00:00