llvm-project/llvm/test/Analysis
John Brawn cd73fe8989 [BasicAA] Use PhiValuesAnalysis if available when handling phi alias
By using PhiValuesAnalysis we can get all the values reachable from a phi, so
we can be more precise instead of giving up when a phi has phi operands. We
can't make BaseicAA directly use PhiValuesAnalysis though, as the user of
BasicAA may modify the function in ways that PhiValuesAnalysis can't cope with.

For this optional usage to work correctly BasicAAWrapperPass now needs to be not
marked as CFG-only (i.e. it is now invalidated even when CFG is preserved) due
to how the legacy pass manager handles dependent passes being invalidated,
namely the depending pass still has a pointer to the now-dead dependent pass.

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

llvm-svn: 338242
2018-07-30 11:52:08 +00:00
..
AliasSet [AliasSet] Teach the alias set how to handle atomic memcpy/memmove/memset 2018-05-30 14:43:39 +00:00
AssumptionCache
BasicAA [BasicAA] Use PhiValuesAnalysis if available when handling phi alias 2018-07-30 11:52:08 +00:00
BlockFrequencyInfo [BPI] Apply invoke heuristic before loop branch heuristic 2018-06-08 13:03:21 +00:00
BranchProbabilityInfo [BPI] Apply invoke heuristic before loop branch heuristic 2018-06-08 13:03:21 +00:00
CFLAliasAnalysis Revert r332657: "[AA] cfl-anders-aa with field sensitivity" 2018-05-17 21:56:39 +00:00
CallGraph
ConstantFolding [ConstantFold] Disallow folding vector geps into bitcasts 2018-06-01 19:34:35 +00:00
CostModel [TargetTransformInfo] Add pow2 analysis for scalar constants 2018-07-11 17:51:27 +00:00
Delinearization Re-apply "[SCEV] Strengthen StrengthenNoWrapFlags (reapply r334428)." 2018-07-13 23:58:46 +00:00
DemandedBits
DependenceAnalysis [DA] Delinearise AddRecs if we can prove they don't wrap 2018-06-25 15:13:26 +00:00
DivergenceAnalysis DivergenceAnalysis: added debug output 2018-07-13 13:13:30 +00:00
DominanceFrontier
Dominators
GlobalsModRef [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
IVUsers Re-apply "[SCEV] Strengthen StrengthenNoWrapFlags (reapply r334428)." 2018-07-13 23:58:46 +00:00
LazyCallGraph
LazyValueAnalysis
Lint
LoopAccessAnalysis [SCEV] Don't expand Wrap predicate using inttoptr in ni addrspaces 2018-07-26 21:55:06 +00:00
LoopInfo
MemoryDependenceAnalysis [MemDep] Fixed handling of invariant.group 2018-05-18 22:40:34 +00:00
MemorySSA llvm: Add support for "-fno-delete-null-pointer-checks" 2018-07-09 22:27:23 +00:00
MustExecute [LICM] Extend the MustExecute scope 2018-05-18 04:56:28 +00:00
PhiValues Add a PhiValuesAnalysis pass to calculate the underlying values of phis 2018-06-28 14:13:06 +00:00
PostDominators
ProfileSummary
RegionInfo
ScalarEvolution [SCEV] Add zext(C + x + ...) -> D + zext(C-D + x + ...)<nuw><nsw> transform 2018-07-24 21:48:56 +00:00
ScopedNoAliasAA
TypeBasedAliasAnalysis
ValueTracking Fix llvm::ComputeNumSignBits with some operations and llvm.assume 2018-07-25 16:39:24 +00:00
alias-analysis-uses.ll