1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/include/llvm/Analysis
Eric Fiselier bf060d4e97 [Analysis] Support aligned new/delete functions.
Summary:
Clang's __builtin_operator_new/delete was recently taught about the aligned allocation overloads (r328134). This patch makes LLVM aware of them as well.
This allows the compiler to perform certain optimizations including eliding new/delete calls.

Reviewers: rsmith, majnemer, dblaikie, vsk, bkramer

Reviewed By: bkramer

Subscribers: ckennelly, llvm-commits

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

llvm-svn: 329218
2018-04-04 19:01:51 +00:00
..
Utils Fix a couple of layering violations in Transforms 2018-03-21 22:34:23 +00:00
AliasAnalysis.h [AliasAnalysis] Shrink AliasResults; NFC 2018-03-10 03:34:43 +00:00
AliasAnalysisEvaluator.h [ModRefInfo] Add must alias info to ModRefInfo. 2017-12-21 21:41:53 +00:00
AliasSetTracker.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-07-24 23:16:33 +00:00
AssumptionCache.h [Analysis, Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-09-01 21:37:29 +00:00
BasicAliasAnalysis.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-11 21:30:02 +00:00
BlockFrequencyInfo.h Revert r320104: infinite loop profiling bug fix 2017-12-08 19:38:07 +00:00
BlockFrequencyInfoImpl.h MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
BranchProbabilityInfo.h [BranchProbabilityInfo] Handle irreducible loops. 2017-11-01 15:16:50 +00:00
CallGraph.h Remove CallGraphTraits and use equivalent methods in GraphTraits 2018-02-01 19:40:35 +00:00
CallGraphSCCPass.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. Also affected in files (NFC). 2017-08-31 21:56:16 +00:00
CallPrinter.h
CaptureTracking.h
CFG.h [LV][CFG] Add irreducible CFG detection for outer loops 2018-03-02 12:24:25 +00:00
CFGPrinter.h
CFLAliasAnalysisUtils.h [CFLAA] Move FunctionHandle to llvm::cflaa. 2017-06-27 02:43:00 +00:00
CFLAndersAliasAnalysis.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-11 21:30:02 +00:00
CFLSteensAliasAnalysis.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-11 21:30:02 +00:00
CGSCCPassManager.h [NFC] fix trivial typos in comments 2018-01-23 05:49:30 +00:00
CmpInstAnalysis.h [InstCombine][InstSimplify] Teach decomposeBitTestICmp to look through truncate instructions 2017-09-01 21:27:34 +00:00
CodeMetrics.h
ConstantFolding.h [Evaluator] Evaluate load/store with bitcast 2018-03-13 10:19:50 +00:00
DemandedBits.h Prune whitespaces in blank lines. 2017-08-28 07:48:37 +00:00
DependenceAnalysis.h
DivergenceAnalysis.h StructurizeCFG: Test for branch divergence correctly 2018-04-04 10:58:15 +00:00
DominanceFrontier.h Reverting r315590; it did not include changes for llvm-tblgen, which is causing link errors for several people. 2017-10-15 14:32:27 +00:00
DominanceFrontierImpl.h Reverting r315590; it did not include changes for llvm-tblgen, which is causing link errors for several people. 2017-10-15 14:32:27 +00:00
DomPrinter.h
DOTGraphTraitsPass.h [DOTGraphTraits] Propagate Graph template argument, NFC 2017-07-24 12:55:00 +00:00
EHPersonalities.h
GlobalsModRef.h
IndirectCallPromotionAnalysis.h Separate the ICP total threshold and remaining threshold. 2017-07-28 01:02:54 +00:00
IndirectCallSiteVisitor.h IndirectCallSiteVisitor.h:findIndirectCallSites Don't mark header functions as file-scope static 2017-10-24 17:29:12 +00:00
InlineCost.h [NFC] fix trivial typos in comments 2018-01-23 05:49:30 +00:00
InstructionSimplify.h [NFC] Extract out a helper function for SimplifyCall(CS, Q) 2017-12-27 00:16:12 +00:00
Interval.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-07-24 23:16:33 +00:00
IntervalIterator.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-07-24 23:16:33 +00:00
IntervalPartition.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-07-24 23:16:33 +00:00
IteratedDominanceFrontier.h [Dominators] Make IsPostDominator a template parameter 2017-07-14 18:26:09 +00:00
IVUsers.h Rename WeakVH to WeakTrackingVH; NFC 2017-05-01 17:07:49 +00:00
LazyBlockFrequencyInfo.h
LazyBranchProbabilityInfo.h [BPI] Don't assume that strcmp returning >0 is more likely than <0 2017-06-08 09:44:40 +00:00
LazyCallGraph.h [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-11 21:30:02 +00:00
LazyValueInfo.h [JumpThreading] PR36133 enable/disable DominatorTree for LVI analysis 2018-02-16 16:35:17 +00:00
Lint.h
Loads.h Make visible isDereferenceableAndAlignedPointer(..., const APInt &Size, ...) 2017-06-24 01:35:13 +00:00
LoopAccessAnalysis.h [SLP] Fix PR36481: vectorize reassociated instructions. 2018-04-03 17:14:47 +00:00
LoopAnalysisManager.h Add MemorySSA as loop dependency, disabled by default [NFC]. 2017-11-21 15:45:46 +00:00
LoopInfo.h [PM/Unswitch] Teach SimpleLoopUnswitch to do non-trivial unswitching, 2017-11-17 19:58:36 +00:00
LoopInfoImpl.h [include] Change std::sort to llvm::sort in response to r327219 2018-04-01 18:39:50 +00:00
LoopIterator.h [LV][CFG] Add irreducible CFG detection for outer loops 2018-03-02 12:24:25 +00:00
LoopPass.h Use a BumpPtrAllocator for Loop objects 2017-09-28 02:45:42 +00:00
LoopUnrollAnalyzer.h
MemoryBuiltins.h MemoryBuiltins.h: Don't mark header functions as file-scope static 2017-10-24 17:29:13 +00:00
MemoryDependenceAnalysis.h Revert "[memcpyopt] Teach memcpyopt to optimize across basic blocks" 2017-12-28 05:10:33 +00:00
MemoryLocation.h Allow None as a MemoryLocation to getModRefInfo 2017-08-01 00:28:29 +00:00
MemorySSA.h [MemorySSA] Split PtrIntPair as this fails on win/arm. 2018-03-08 19:15:00 +00:00
MemorySSAUpdater.h [MemorySSA] Fix exponential compile-time updating MemorySSA. 2018-03-26 19:52:54 +00:00
ModuleSummaryAnalysis.h [Analysis] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-16 22:07:40 +00:00
MustExecute.h Add missing #includes to Analysis/MustExecute.h 2018-03-21 17:31:45 +00:00
ObjCARCAliasAnalysis.h
ObjCARCAnalysisUtils.h Improve caching scheme in ProvenanceAnalysis. 2018-03-12 20:36:25 +00:00
ObjCARCInstKind.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
OptimizationRemarkEmitter.h Rename OptimizationDiagnosticInfo.* to OptimizationRemarkEmitter.* 2017-10-09 23:19:02 +00:00
OrderedBasicBlock.h Revert "Make OrderedInstructions and OrderedBasicBlock use AssertingVH, to try and catch mistakes" 2017-06-28 22:35:54 +00:00
Passes.h Add an analysis printer for must execute reasoning 2018-03-20 17:09:21 +00:00
PHITransAddr.h
PostDominators.h [Dominators] Remove verifyDomTree and add some verifying for Post Dom Trees 2018-02-28 11:00:08 +00:00
ProfileSummaryInfo.h [PGO] Function section hotness prefix should look at all blocks 2017-12-20 17:53:10 +00:00
PtrUseVisitor.h [NFC] fix trivial typos in comments and documents 2018-01-29 05:17:03 +00:00
RegionInfo.h Declare PostDominatorTree as a class 2018-02-09 18:41:42 +00:00
RegionInfoImpl.h RegionInfo: Use report_fatal_error instead of llvm_unreachable 2018-01-05 17:51:36 +00:00
RegionIterator.h Test commit 2017-06-29 09:46:01 +00:00
RegionPass.h Add opt-bisect support for region passes. 2017-06-01 21:22:26 +00:00
RegionPrinter.h
ScalarEvolution.h [SCEV] Prove implications for SCEVUnknown Phis 2018-04-04 05:46:47 +00:00
ScalarEvolutionAliasAnalysis.h
ScalarEvolutionExpander.h [SCEV] Fix Typo. NFC. 2017-12-20 15:06:26 +00:00
ScalarEvolutionExpressions.h [SCEV] Make getPostIncExpr guaranteed to return AddRec 2018-02-12 05:09:38 +00:00
ScalarEvolutionNormalization.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ScopedNoAliasAA.h [Analysis] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-18 23:51:26 +00:00
SparsePropagation.h [SparsePropagation] Enable interprocedural analysis 2017-10-16 17:44:17 +00:00
SyntheticCountsUtils.h Remove CallGraphTraits and use equivalent methods in GraphTraits 2018-02-01 19:40:35 +00:00
TargetFolder.h
TargetLibraryInfo.def [Analysis] Support aligned new/delete functions. 2018-04-04 19:01:51 +00:00
TargetLibraryInfo.h TargetLibraryInfo: Stop guessing wchar_t size 2017-09-26 02:36:57 +00:00
TargetTransformInfo.h Plumb useAA through TargetTransformInfo to remove Transforms->CodeGen header dependency 2018-03-28 22:28:50 +00:00
TargetTransformInfoImpl.h Plumb useAA through TargetTransformInfo to remove Transforms->CodeGen header dependency 2018-03-28 22:28:50 +00:00
Trace.h [Analysis] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-07-21 21:37:46 +00:00
TypeBasedAliasAnalysis.h [Analysis] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-18 23:51:26 +00:00
TypeMetadataUtils.h [cfi] CFI-ICall for ThinLTO. 2017-06-16 00:18:29 +00:00
ValueLattice.h [IPSCCP] Add getCompare which returns either true, false, undef or null. 2018-03-05 17:33:50 +00:00
ValueLatticeUtils.h [IPSCCP] Move common functions to ValueLatticeUtils (NFC) 2017-10-13 17:53:44 +00:00
ValueTracking.h [NFC] Factor out a helper function for checking if a block has a potential early implicit exit. 2018-03-08 21:25:30 +00:00
VectorUtils.h