1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/include/llvm/Analysis
Serguei Katkov dbe48d9fbb [BPI] Refactor post domination calculation and simple fix for ColdCall
Collection of PostDominatedByUnreachable and PostDominatedByColdCall have been
split out of heuristics itself. Update of the data happens now for each basic
block (before update for PostDominatedByColdCall might be skipped if
unreachable or matadata heuristic handled this basic block).

This separation allows re-ordering of heuristics without loosing
the post-domination information.

Reviewers: sanjoy, junbuml, vsk, chandlerc, reames

Reviewed By: chandlerc

Subscribers: llvm-commits

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

llvm-svn: 300029
2017-04-12 05:42:14 +00:00
..
AliasAnalysis.h AliasAnalysis: Be less conservative about volatile than atomic. 2017-04-07 01:28:36 +00:00
AliasAnalysisEvaluator.h Consistently use FunctionAnalysisManager 2016-08-09 00:28:15 +00:00
AliasSetTracker.h Use a WeakVH for UnknownInstructions in AliasSetTracker 2017-03-11 01:15:48 +00:00
AssumptionCache.h AssumptionCache: Disable the verifier by default, move it behind a hidden cl::opt and verify from releaseMemory(). 2017-02-15 21:10:09 +00:00
BasicAliasAnalysis.h De-duplicate some code for creating an AARGetter suitable for the legacy PM. 2017-02-09 23:11:52 +00:00
BlockFrequencyInfo.h Add an interface to scale the frequencies of a set of blocks. 2017-01-19 18:53:16 +00:00
BlockFrequencyInfoImpl.h Add support to dump dot graph block layout after MBP 2017-01-29 01:57:02 +00:00
BranchProbabilityInfo.h [BPI] Refactor post domination calculation and simple fix for ColdCall 2017-04-12 05:42:14 +00:00
CallGraph.h [PH] Replace uses of AssertingVH from members of analysis results with 2017-01-24 12:55:57 +00:00
CallGraphSCCPass.h [CallGraphSCCPass] Use an ArrayRef instead of a pair of iterators 2016-08-06 06:21:02 +00:00
CallPrinter.h [CG] Rename the DOT printing pass to actually reference "DOT". 2016-03-10 11:04:40 +00:00
CaptureTracking.h [CaptureTracker] Provide an ordered basic block to PointerMayBeCapturedBefore 2015-07-31 14:31:35 +00:00
CFG.h Add some constantness to GetSuccessorNumber(). 2015-11-20 23:02:06 +00:00
CFGPrinter.h [PM] Port CFGViewer and CFGPrinter to the new Pass Manager 2016-09-15 18:35:27 +00:00
CFLAndersAliasAnalysis.h [PM] Extend the explicit 'invalidate' method API on analysis results to 2016-11-28 22:04:31 +00:00
CFLSteensAliasAnalysis.h [PM] Extend the explicit 'invalidate' method API on analysis results to 2016-11-28 22:04:31 +00:00
CGSCCPassManager.h Revert r293017 and fix the actual underlying issue. 2017-02-07 01:50:48 +00:00
CodeMetrics.h Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
ConstantFolding.h InstSimplify: Add a hook for shufflevector 2017-04-03 22:05:30 +00:00
DemandedBits.h Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
DependenceAnalysis.h [PM] Change the static object whose address is used to uniquely identify 2016-11-23 17:53:26 +00:00
DivergenceAnalysis.h [DivergenceAnalysis] Separated definition of class into header. 2015-09-21 17:58:14 +00:00
DominanceFrontier.h [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
DominanceFrontierImpl.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DomPrinter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DOTGraphTraitsPass.h DOTGraphTraits: Allow the decision to show a graph to consider the analysis 2015-12-17 12:48:25 +00:00
EHPersonalities.h [tsan] Add support for C++ exceptions into TSan (call __tsan_func_exit during unwinding), LLVM part 2016-11-14 21:41:13 +00:00
GlobalsModRef.h [PM] Change the static object whose address is used to uniquely identify 2016-11-23 17:53:26 +00:00
IndirectCallPromotionAnalysis.h Refactor indirect call promotion profitability analysis (NFC) 2016-07-12 21:13:44 +00:00
IndirectCallSiteVisitor.h Fix the samplepgo indirect call promotion bug: we should not promote a direct call. 2017-02-06 23:33:15 +00:00
InlineCost.h Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
InstructionSimplify.h InstSimplify: Add a hook for shufflevector 2017-04-03 22:05:30 +00:00
Interval.h s/static inline/static/ for headers I have changed in r279475. NFC. 2016-08-31 16:48:13 +00:00
IntervalIterator.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
IntervalPartition.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
IteratedDominanceFrontier.h IDFCalculator: Remove unused field. 2016-08-22 19:52:23 +00:00
IVUsers.h [PM] Separate the LoopAnalysisManager from the LoopPassManager and move 2017-01-11 09:43:56 +00:00
LazyBlockFrequencyInfo.h [LazyBFI] Fix typos 2017-02-14 17:21:12 +00:00
LazyBranchProbabilityInfo.h Add new pass LazyMachineBlockFrequencyInfo 2017-02-14 17:21:09 +00:00
LazyCallGraph.h [PM/LCG] Teach the LazyCallGraph how to replace a function without 2017-02-09 23:24:13 +00:00
LazyValueInfo.h [LVI] Add an LVI printer pass to capture test LVI cache after transformations 2017-03-22 19:27:12 +00:00
Lint.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Loads.h Extract FindAvailablePtrLoadStore out of FindAvailableLoadedValue. NFCI 2017-03-19 15:27:52 +00:00
LoopAccessAnalysis.h [SLP] Revert everything that has to do with memory access sorting. 2017-03-10 18:59:07 +00:00
LoopAnalysisManager.h Revert r293017 and fix the actual underlying issue. 2017-02-07 01:50:48 +00:00
LoopInfo.h More comments for getUniqueExitBlocks. NFCI 2017-02-21 19:08:03 +00:00
LoopInfoImpl.h Remove unused functions. Remove static qualifier from functions in header files. NFC. 2017-04-11 14:55:32 +00:00
LoopIterator.h [LV] Move LoopBodyTraits to a better place, and add comment for simplifying LoopBlocksTraversal. NFC. 2016-08-17 22:20:07 +00:00
LoopPass.h [LCSSA] Perform LCSSA verification only for the current loop nest. 2016-10-28 12:57:20 +00:00
LoopUnrollAnalyzer.h Revert "Revert "[Unroll] Implement a conservative and monotonically increasing cost tracking system during the full unroll heuristic analysis that avoids counting any instruction cost until that instruction becomes "live" through a side-effect or use outside the..."" 2016-05-13 21:23:25 +00:00
MemoryBuiltins.h Let llvm.objectsize be conservative with null pointers 2017-03-21 20:08:59 +00:00
MemoryDependenceAnalysis.h [Devirtualization] MemDep returns non-local !invariant.group dependencies 2017-01-12 11:33:58 +00:00
MemoryLocation.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
MemorySSA.h MemorySSA: Move to Analysis, from Transforms/Utils. It's used as 2017-04-11 20:06:36 +00:00
MemorySSAUpdater.h MemorySSA: Move to Analysis, from Transforms/Utils. It's used as 2017-04-11 20:06:36 +00:00
ModuleSummaryAnalysis.h [PM] Change the static object whose address is used to uniquely identify 2016-11-23 17:53:26 +00:00
ObjCARCAliasAnalysis.h [PM] Extend the explicit 'invalidate' method API on analysis results to 2016-11-28 22:04:31 +00:00
ObjCARCAnalysisUtils.h Add support for objc_unsafeClaimAutoreleasedReturnValue to the 2016-01-27 19:05:08 +00:00
ObjCARCInstKind.h Add support for objc_unsafeClaimAutoreleasedReturnValue to the 2016-01-27 19:05:08 +00:00
ObjectUtils.h Move llvm::canBeOmittedFromSymbolTable() to Analysis. 2017-03-31 04:46:31 +00:00
OptimizationDiagnosticInfo.h [ORE] Remove ORE.emit{{.+}} functions 2017-02-23 21:32:53 +00:00
OrderedBasicBlock.h [CaptureTracker] Provide an ordered basic block to PointerMayBeCapturedBefore 2015-07-31 14:31:35 +00:00
Passes.h [PM] Port of the DepndenceAnalysis to the new PM. 2016-05-12 22:19:39 +00:00
PHITransAddr.h Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
PostDominators.h [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
ProfileSummaryInfo.h Use isFunctionHotInCallGraph to set the function section prefix. 2017-03-23 23:14:11 +00:00
PtrUseVisitor.h [IR/Analysis] Defend against getting slightly wrong template arguments 2017-02-07 03:17:30 +00:00
RegionInfo.h [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
RegionInfoImpl.h Fix the build for libstdc++ 4.7 2016-07-27 18:25:12 +00:00
RegionIterator.h Modify df_iterator to support post-order actions 2016-10-05 21:36:16 +00:00
RegionPass.h Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
RegionPrinter.h [RegionInfo] Add debug-time region viewer functions 2015-08-10 13:21:59 +00:00
ScalarEvolution.h [ScalarEvolution] Re-enable Predicate implication from operations 2017-03-31 12:05:30 +00:00
ScalarEvolutionAliasAnalysis.h [PM] Change the static object whose address is used to uniquely identify 2016-11-23 17:53:26 +00:00
ScalarEvolutionExpander.h Re-land "[SCEVExpander] Use llvm data structures; NFC" 2016-12-13 22:04:58 +00:00
ScalarEvolutionExpressions.h [SCEV] Refactor out a useful pattern; NFC 2016-11-09 18:22:43 +00:00
ScalarEvolutionNormalization.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ScopedNoAliasAA.h [PM] Extend the explicit 'invalidate' method API on analysis results to 2016-11-28 22:04:31 +00:00
SparsePropagation.h Make more headers self-contained. 2016-01-27 18:03:37 +00:00
TargetFolder.h [ConstnatFolding] Teach the folder how to fold ConstantVector 2016-07-29 03:27:26 +00:00
TargetLibraryInfo.def [Analysis] Add LibFunc_ prefix to enums in TargetLibraryInfo. (NFC) 2017-01-23 23:16:46 +00:00
TargetLibraryInfo.h [Analysis] Add LibFunc_ prefix to enums in TargetLibraryInfo. (NFC) 2017-01-23 23:16:46 +00:00
TargetTransformInfo.h [CodeGenPrep] move aarch64-type-promotion to CGP 2017-04-03 19:20:07 +00:00
TargetTransformInfoImpl.h [CodeGenPrep] move aarch64-type-promotion to CGP 2017-04-03 19:20:07 +00:00
Trace.h
TypeBasedAliasAnalysis.h [PM] Extend the explicit 'invalidate' method API on analysis results to 2016-11-28 22:04:31 +00:00
TypeMetadataUtils.h Analysis: Add appropriate const qualification to functions in TypeMetadataUtils.cpp. NFC. 2017-01-27 22:55:30 +00:00
ValueTracking.h Revert r298711 "[InstCombine] Provide a way to calculate KnownZero/One for Add/Sub in SimplifyDemandedUseBits without recursing into ComputeKnownBits" 2017-03-24 22:12:10 +00:00
VectorUtils.h [LV] Move interleaved access helper functions to VectorUtils (NFC) 2017-02-01 17:45:46 +00:00