1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/include/llvm/Analysis
Nikita Popov 00449b7b7f [ValueTracking] Move constant range computation into ValueTracking; NFC
InstructionSimplify currently has some code to determine the constant
range of integer instructions for some simple cases. It is used to
simplify icmps.

This change moves the relevant code into ValueTracking as
llvm::computeConstantRange(), so it can also be reused for other
purposes.

In particular this is with the optimization of overflow checks in
mind (ref D59071), where constant ranges cover some cases that
known bits don't.

llvm-svn: 355781
2019-03-09 21:17:42 +00:00
..
Utils Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
AliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
AliasAnalysisEvaluator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
AliasSetTracker.h [LICM/MSSA] Add promotion to scalars by building an AliasSetTracker with MemorySSA. 2019-02-06 20:25:17 +00:00
AssumptionCache.h [CodeExtractor] Update function's assumption cache after extracting blocks from it 2019-02-08 06:55:18 +00:00
BasicAliasAnalysis.h [BasicAA] Cache nonEscapingLocalObjects for alias() calls. 2019-02-05 23:52:08 +00:00
BlockFrequencyInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BlockFrequencyInfoImpl.h Replace llvm::isPodLike<...> by llvm::is_trivially_copyable<...> 2019-01-20 21:19:56 +00:00
BranchProbabilityInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CallGraph.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CallGraphSCCPass.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CallPrinter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CaptureTracking.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CFG.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CFGPrinter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CFLAliasAnalysisUtils.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CFLAndersAliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CFLSteensAliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CGSCCPassManager.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CmpInstAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CodeMetrics.h Remove CallSite from the CodeMetrics analysis, moving it to the new 2019-02-11 09:03:32 +00:00
ConstantFolding.h [CallSite removal] Migrate ConstantFolding APIs and implementation to 2019-02-11 07:51:44 +00:00
DemandedBits.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DependenceAnalysis.h [DA][NewPM] Handle transitive dependencies in the new-pm version of DA 2019-02-03 12:25:41 +00:00
DivergenceAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DominanceFrontier.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DominanceFrontierImpl.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DomPrinter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DomTreeUpdater.h [DTU] Refine the interface and logic of applyUpdates 2019-02-22 13:48:38 +00:00
DOTGraphTraitsPass.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
EHPersonalities.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GlobalsModRef.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GuardUtils.h [NFC] Add function to parse widenable conditional branches 2019-01-22 11:21:32 +00:00
IndirectCallPromotionAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IndirectCallVisitor.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InlineCost.h Provide reason messages for unviable inlining 2019-02-01 10:44:43 +00:00
InstructionPrecedenceTracking.h [NFC] Fix typos: preceeding -> preceding 2019-02-23 01:28:32 +00:00
InstructionSimplify.h [CallSite removal] Port InstSimplify over to use CallBase both in its 2019-02-11 07:54:10 +00:00
Interval.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IntervalIterator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IntervalPartition.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IteratedDominanceFrontier.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IVDescriptors.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IVUsers.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LazyBlockFrequencyInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LazyBranchProbabilityInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LazyCallGraph.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LazyValueInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LegacyDivergenceAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Lint.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Loads.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopAccessAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopAnalysisManager.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopInfo.h Refactor setAlreadyUnrolled() and setAlreadyVectorized(). 2019-02-11 19:45:44 +00:00
LoopInfoImpl.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopIterator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopPass.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LoopUnrollAnalyzer.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MemoryBuiltins.h Add a 'dynamic' parameter to the objectsize intrinsic 2019-01-30 20:34:35 +00:00
MemoryDependenceAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MemoryLocation.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MemorySSA.h [MemorySSA] Remove verifyClobberSanity. 2019-02-11 19:51:21 +00:00
MemorySSAUpdater.h [MemorySSA] Extend removeMemoryAccess API to optimize MemoryPhis. 2019-01-31 20:13:47 +00:00
ModuleSummaryAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MustExecute.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ObjCARCAliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ObjCARCAnalysisUtils.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ObjCARCInstKind.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OptimizationRemarkEmitter.h Reland "[Remarks] Refactor remark diagnostic emission in a RemarkStreamer" 2019-03-06 15:20:13 +00:00
OrderedBasicBlock.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrderedInstructions.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Passes.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PHITransAddr.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PhiValues.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PostDominators.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ProfileSummaryInfo.h [PGO] Context sensitive PGO (part 2) 2019-02-28 19:55:07 +00:00
PtrUseVisitor.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RegionInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RegionInfoImpl.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RegionIterator.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RegionPass.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RegionPrinter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ScalarEvolution.h [NFC] Use ArrayRef instead of SmallVectorImpl where possible 2019-01-29 09:39:15 +00:00
ScalarEvolutionAliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ScalarEvolutionExpander.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ScalarEvolutionExpressions.h [SCEV][NFC] Introduces expression sizes estimation 2019-01-21 06:19:50 +00:00
ScalarEvolutionNormalization.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ScopedNoAliasAA.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SparsePropagation.h Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
StackSafetyAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SyncDependenceAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SyntheticCountsUtils.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TargetFolder.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TargetLibraryInfo.def Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TargetLibraryInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TargetTransformInfo.h [LSR] Generate cross iteration indexes 2019-02-07 13:32:54 +00:00
TargetTransformInfoImpl.h [LSR] Generate cross iteration indexes 2019-02-07 13:32:54 +00:00
Trace.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TypeBasedAliasAnalysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
TypeMetadataUtils.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ValueLattice.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ValueLatticeUtils.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ValueTracking.h [ValueTracking] Move constant range computation into ValueTracking; NFC 2019-03-09 21:17:42 +00:00
VectorUtils.h [InterleavedAccessAnalysis] Fix integer overflow in insertMember. 2019-03-07 17:50:16 +00:00