Home
last modified time | relevance | path

Searched full:analysis (Results 1 – 25 of 1854) sorted by relevance

12345678910>>...75

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DPassManager.h44 #include "llvm/IR/Analysis.h"
62 // Forward declare the analysis manager template.
87 /// A CRTP mix-in that provides informational APIs needed for analysis passes.
89 /// This provides some boilerplate for types that are analysis passes. It
93 /// Returns an opaque, unique ID for this analysis type.
155 /// argument. The pass manager will propagate that analysis manager to each
156 /// pass it runs, and will call the analysis manager's invalidation routine with
263 /// List of analysis pass IDs and associated concept pointers.
266 /// erases. Provides the analysis ID to enable finding iterators to a given
275 /// Map type from a pair of analysis ID and IRUnitT pointer to an
[all …]
H A DAnalysis.h1 //===- Analysis.h --------------------------------------------*- C++ -*-===//
22 /// A special type used by analysis passes to provide an address that
23 /// identifies that particular analysis pass type.
25 /// Analysis passes should have a static data member of this type and derive
27 /// the analysis in the pass management infrastructure.
35 /// function by preserving the appropriate AnalysisSetKey. An analysis that
37 /// if it is, the analysis knows that it itself is preserved.
94 /// Finally, this class can represent an "abandoned" analysis, which is
97 /// Given a `PreservedAnalyses` object, an analysis will typically want to
108 /// // The analysis has been successfully preserved ...
[all …]
H A DLegacyPassManagers.h28 // o Make required Analysis information available before pass P is run
30 // o If Analysis information is dirtied by a pass then regenerate Analysis
51 // PMDataManager manages information, e.g. list of available analysis info,
174 /// P are run before P is run. Update analysis info maintained by
178 /// Set pass P as the last user of the given analysis passes.
184 /// Find the pass that implements Analysis AID. Search immutable
189 /// Retrieve the PassInfo for an analysis.
192 /// Find analysis usage information for the pass P.
230 // Map to keep track of last user of the analysis pas
[all...]
/freebsd/contrib/llvm-project/clang/lib/Analysis/FlowSensitive/
H A DTypeErasedDataflowAnalysis.cpp24 #include "clang/Analysis/Analyses/PostOrderCFGView.h"
25 #include "clang/Analysis/CFG.h"
26 #include "clang/Analysis/FlowSensitive/DataflowEnvironment.h"
27 #include "clang/Analysis/FlowSensitive/DataflowLattice.h"
28 #include "clang/Analysis/FlowSensitive/DataflowWorklist.h"
29 #include "clang/Analysis/FlowSensitive/RecordOps.h"
30 #include "clang/Analysis/FlowSensitive/Transfer.h"
31 #include "clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h"
32 #include "clang/Analysis/FlowSensitive/Value.h"
88 /// Holds data structures required for running dataflow analysis.
[all …]
/freebsd/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/
H A DDataflowAnalysis.h24 #include "clang/Analysis/CFG.h"
25 #include "clang/Analysis/FlowSensitive/AdornedCFG.h"
26 #include "clang/Analysis/FlowSensitive/DataflowEnvironment.h"
27 #include "clang/Analysis/FlowSensitive/DataflowLattice.h"
28 #include "clang/Analysis/FlowSensitive/MatchSwitch.h"
29 #include "clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h"
30 #include "clang/Analysis/FlowSensitive/WatchedLiteralsSolver.h"
49 /// the analysis transfer function for a given CFG element and lattice
54 /// Environment &Env)` - applies the analysis transfer
82 /// Bounded join-semilattice that is used in the analysis.
[all …]
H A DTypeErasedDataflowAnalysis.h23 #include "clang/Analysis/CFG.h"
24 #include "clang/Analysis/FlowSensitive/AdornedCFG.h"
25 #include "clang/Analysis/FlowSensitive/DataflowAnalysisContext.h"
26 #include "clang/Analysis/FlowSensitive/DataflowEnvironment.h"
27 #include "clang/Analysis/FlowSensitive/DataflowLattice.h"
38 // analysis).
65 /// Returns the `ASTContext` that is used by the analysis.
97 /// Applies the analysis transfer function for a given control flow graph
102 /// Applies the analysis transfer function for a given edge from a CFG block
148 /// Performs dataflow analysis and returns a mapping from basic block IDs to
[all …]
H A DDataflowValues.h18 #include "clang/Analysis/CFG.h"
19 #include "clang/Analysis/ProgramPoint.h"
27 /// a dataflow analysis flows.
61 /// from a forward analysis.
65 /// from a backward analysis.
81 /// dataflow analysis. This method is usually specialized by subclasses.
98 /// specified CFGBlock. If the dataflow analysis is a forward analysis,
99 /// this data is associated with the END of the block. If the analysis
100 /// is a backwards analysis, it is associated with the ENTRY of the block.
112 /// specified Stmt. If the dataflow analysis is a forward analysis,
[all …]
H A DLogger.h12 #include "clang/Analysis/CFG.h"
22 /// A logger is notified as the analysis progresses.
23 /// It can produce a report of the analysis's findings and how it came to them.
26 /// The specific analysis can add extra details to be presented in context.
34 /// A logger that builds an HTML UI to inspect the analysis results.
35 /// Each function's analysis is written to a stream obtained from the factory.
47 // At any time during the analysis, we're computing the state for some target
61 /// Records the analysis state computed for the current program point.
63 /// Records that the analysis state for the current block is now final.
/freebsd/contrib/llvm-project/llvm/include/llvm/
H A DLinkAllPasses.h9 // This header file pulls in all transformation and analysis passes for tools
18 #include "llvm/Analysis/AliasAnalysisEvaluator.h"
19 #include "llvm/Analysis/AliasSetTracker.h"
20 #include "llvm/Analysis/BasicAliasAnalysis.h"
21 #include "llvm/Analysis/CallPrinter.h"
22 #include "llvm/Analysis/DomPrinter.h"
23 #include "llvm/Analysis/GlobalsModRef.h"
24 #include "llvm/Analysis/Passes.h"
25 #include "llvm/Analysis/PostDominators.h"
26 #include "llvm/Analysis/RegionPass.h"
[all …]
H A DPassSupport.h38 #define INITIALIZE_PASS(passName, arg, name, cfg, analysis) \ argument
42 PassInfo::NormalCtor_t(callDefaultCtor<passName>), cfg, analysis); \
52 #define INITIALIZE_PASS_BEGIN(passName, arg, name, cfg, analysis) \ argument
59 #define INITIALIZE_PASS_END(passName, arg, name, cfg, analysis) \ argument
62 PassInfo::NormalCtor_t(callDefaultCtor<passName>), cfg, analysis); \
72 #define INITIALIZE_PASS_WITH_OPTIONS(PassName, Arg, Name, Cfg, Analysis) \ argument
73 INITIALIZE_PASS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \
75 INITIALIZE_PASS_END(PassName, Arg, Name, Cfg, Analysis)
77 #define INITIALIZE_PASS_WITH_OPTIONS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \ argument
78 INITIALIZE_PASS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \
[all …]
H A DPassAnalysisSupport.h1 //===- llvm/PassAnalysisSupport.h - Analysis Pass Support code --*- C++ -*-===//
9 // This file defines stuff that is used to define and "use" Analysis Passes.
40 /// Represent the analysis usage information of a pass. This tracks analyses
154 /// analysis information out of pass manager that is responsible to manage
186 /// Clear cache that is used to connect a pass to the analysis (PassInfo).
191 /// Return analysis result or null if it doesn't exist.
199 /// PassManager that is used to resolve analysis info
204 /// get analysis information that might be around, for example to update it.
205 /// This is different than getAnalysis in that it can fail (if the analysis
207 /// the case when the analysis is not available. This method is often used by
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DLazyBlockFrequencyInfo.h1 //===- LazyBlockFrequencyInfo.h - Lazy Block Frequency Analysis -*- C++ -*-===//
9 // This is an alternative analysis pass to BlockFrequencyInfoWrapperPass. The
11 // the analysis pass is executed but rather when the BFI result is explicitly
12 // requested by the analysis client.
19 #include "llvm/Analysis/BlockFrequencyInfo.h"
20 #include "llvm/Analysis/LazyBranchProbabilityInfo.h"
31 /// analysis without paying for the overhead if BFI doesn't end up being used.
75 /// This is an alternative analysis pass to
77 /// block frequencies are not computed when the analysis pass is executed but
78 /// rather when the BFI result is explicitly requested by the analysis client.
[all …]
H A DLoopAnalysisManager.h1 //===- LoopAnalysisManager.h - Loop analysis management ---------*- C++ -*-===//
17 /// 3) A collection of analysis results are available:
66 /// Extern template declaration for the analysis set for this IR unit.
70 /// The loop analysis manager.
86 /// This allows it to collect loop objects for which analysis results may be
94 // We have to null out the analysis manager in the moved-from state in Result()
96 // analysis state. in Result()
103 // We have to null out the analysis manager in the moved-from state
105 // analysis state.
114 // Clear out the analysis manager if we're being destroyed -- it means we in ~Result()
[all …]
H A DUniformityAnalysis.h10 /// \brief LLVM IR instance of the generic uniformity analysis
18 #include "llvm/Analysis/CycleAnalysis.h"
25 /// Analysis pass which computes \ref UniformityInfo.
32 /// Provide the result typedef for this analysis pass.
35 /// Run the analysis pass over a function and produce a dominator tree.
38 // TODO: verify analysis
54 /// Legacy analysis pass which computes a \ref CycleInfo.
72 // TODO: verify analysis
H A DDOTGraphTraitsPass.h16 #include "llvm/Analysis/CFGPrinter.h"
25 /// Default traits class for extracting a graph from an analysis pass.
56 /// @param Result The current analysis result for this function.
139 /// @param Result The current analysis result for this function.
173 /// Default traits class for extracting a graph from an analysis pass.
194 /// @param Analysis The current analysis result for this function.
195 virtual bool processFunction(Function &F, AnalysisT &Analysis) { in processFunction() argument
200 auto &Analysis = getAnalysis<AnalysisT>(); in runOnFunction() local
202 if (!processFunction(F, Analysis)) in runOnFunction()
205 GraphT Graph = AnalysisGraphTraitsT::getGraph(&Analysis); in runOnFunction()
[all …]
H A DLazyBranchProbabilityInfo.h9 // This is an alternative analysis pass to BranchProbabilityInfoWrapperPass.
11 // computed when the analysis pass is executed but rather when the BPI results
12 // is explicitly requested by the analysis client.
19 #include "llvm/Analysis/BranchProbabilityInfo.h"
28 /// This is an alternative analysis pass to
30 /// branch probabilities are not computed when the analysis pass is executed but
31 /// rather when the BPI results is explicitly requested by the analysis client.
34 /// the analysis:
55 /// analysis without paying for the overhead if BPI doesn't end up being used.
99 /// Helper for client passes to set up the analysis usage on behalf of this
H A DRegionPrinter.h17 #include "llvm/Analysis/DOTGraphTraitsPass.h"
18 #include "llvm/Analysis/RegionInfo.h"
38 /// Open a viewer to display the GraphViz vizualization of the analysis
44 /// @param RI The analysis to display.
52 /// The result of a new analysis may differ from the RegionInfo the pass
58 /// Open a viewer to display the GraphViz vizualization of the analysis
64 /// @param RI The analysis to display.
72 /// The result of a new analysis may differ from the RegionInfo the pass
H A DCycleAnalysis.h10 /// This file declares an analysis pass that computes CycleInfo for
25 /// Legacy analysis pass which computes a \ref CycleInfo.
43 // TODO: verify analysis?
46 /// Analysis pass which computes a \ref CycleInfo.
52 /// Provide the result typedef for this analysis pass.
57 /// Run the analysis pass over a function and produce a dominator tree.
60 // TODO: verify analysis?
/freebsd/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/
H A DAnalyses.def28 ANALYSIS_DIAGNOSTICS(HTML, "html", "Output analysis results using HTML",
33 "Output analysis results using HTML (not allowing for multi-file bugs)",
36 ANALYSIS_DIAGNOSTICS(PLIST, "plist", "Output analysis results using Plists",
41 "Output analysis results using Plists (allowing for multi-file bugs)",
45 "Output analysis results using HTML wrapped with Plists",
48 ANALYSIS_DIAGNOSTICS(SARIF, "sarif", "Output analysis results using SARIF",
52 "Output analysis results using both SARIF and HTML "
56 ANALYSIS_DIAGNOSTICS(TEXT, "text", "Text output of analysis results to stderr",
62 "used in addition to other analysis types",
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DLazyBlockFrequencyInfo.cpp1 //===- LazyBlockFrequencyInfo.cpp - Lazy Block Frequency Analysis ---------===//
9 // This is an alternative analysis pass to BlockFrequencyInfoWrapperPass. The
11 // the analysis pass is executed but rather when the BFI result is explicitly
12 // requested by the analysis client.
16 #include "llvm/Analysis/LazyBlockFrequencyInfo.h"
17 #include "llvm/Analysis/LazyBranchProbabilityInfo.h"
18 #include "llvm/Analysis/LoopInfo.h"
27 "Lazy Block Frequency Analysis", true, true)
31 "Lazy Block Frequency Analysis", true, true)
H A DLazyBranchProbabilityInfo.cpp1 //===- LazyBranchProbabilityInfo.cpp - Lazy Branch Probability Analysis ---===//
9 // This is an alternative analysis pass to BranchProbabilityInfoWrapperPass.
11 // computed when the analysis pass is executed but rather when the BPI results
12 // is explicitly requested by the analysis client.
16 #include "llvm/Analysis/LazyBranchProbabilityInfo.h"
17 #include "llvm/Analysis/LoopInfo.h"
18 #include "llvm/Analysis/TargetLibraryInfo.h"
27 "Lazy Branch Probability Analysis", true, true)
31 "Lazy Branch Probability Analysis", true, true)
/freebsd/lib/clang/libllvm/
H A DMakefile51 SRCS_MIN+= Analysis/AliasAnalysis.cpp
52 SRCS_MIN+= Analysis/AliasAnalysisEvaluator.cpp
53 SRCS_MIN+= Analysis/AliasSetTracker.cpp
54 SRCS_EXT+= Analysis/Analysis.cpp
55 SRCS_MIN+= Analysis/AssumeBundleQueries.cpp
56 SRCS_MIN+= Analysis/AssumptionCache.cpp
57 SRCS_MIN+= Analysis/BasicAliasAnalysis.cpp
58 SRCS_MIN+= Analysis/BlockFrequencyInfo.cpp
59 SRCS_MIN+= Analysis/BlockFrequencyInfoImpl.cpp
60 SRCS_MIN+= Analysis/BranchProbabilityInfo.cpp
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DMachinePassManager.h15 // invalidation. IR analysis results are provided for machine function passes by
16 // their respective analysis managers such as ModuleAnalysisManager and
139 // We have to null out the analysis manager in the moved-from state in Result()
141 // analysis state. in Result()
147 // We have to null out the analysis manager in the moved-from state
149 // analysis state.
154 /// Accessor for the analysis manager.
159 /// If the proxy analysis itself is not preserved, we assume that the set of
161 /// we have to call \c clear() on the inner analysis manager, as it may now
164 /// Regardless of whether the proxy analysis is marked as preserved, all of
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopRotation.cpp14 #include "llvm/Analysis/AssumptionCache.h"
15 #include "llvm/Analysis/InstructionSimplify.h"
16 #include "llvm/Analysis/LazyBlockFrequencyInfo.h"
17 #include "llvm/Analysis/LoopInfo.h"
18 #include "llvm/Analysis/LoopPass.h"
19 #include "llvm/Analysis/MemorySSA.h"
20 #include "llvm/Analysis/MemorySSAUpdater.h"
21 #include "llvm/Analysis/ScalarEvolution.h"
22 #include "llvm/Analysis/TargetTransformInfo.h"
H A DLoopPassManager.cpp10 #include "llvm/Analysis/AssumptionCache.h"
11 #include "llvm/Analysis/BlockFrequencyInfo.h"
12 #include "llvm/Analysis/BranchProbabilityInfo.h"
13 #include "llvm/Analysis/MemorySSA.h"
14 #include "llvm/Analysis/ScalarEvolution.h"
15 #include "llvm/Analysis/TargetLibraryInfo.h"
16 #include "llvm/Analysis/TargetTransformInfo.h"
35 // analysis results shouldn't be impacted by runs over this loop. Therefore, in run()
36 // the remaining analysis results in the AnalysisManager are preserved. We in run()
75 // Request PassInstrumentation from analysis manage in runWithLoopNestPasses()
[all...]

12345678910>>...75