|
clang 22.0.0git
|
A generic, policy-based driver for dataflow analyses. More...
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Analysis/LifetimeSafety/Dataflow.h"
Public Types | |
| using | Lattice = LatticeType |
| using | Base = DataflowAnalysis<Derived, Lattice, Dir> |
Public Member Functions | |
| void | run () |
| Lattice | transfer (Lattice In, const IssueFact &) |
| Lattice | transfer (Lattice In, const ExpireFact &) |
| Lattice | transfer (Lattice In, const OriginFlowFact &) |
| Lattice | transfer (Lattice In, const ReturnOfOriginFact &) |
| Lattice | transfer (Lattice In, const UseFact &) |
| Lattice | transfer (Lattice In, const TestPointFact &) |
Protected Member Functions | |
| DataflowAnalysis (const CFG &Cfg, AnalysisDeclContext &AC, FactManager &FactMgr) | |
| Lattice | getState (ProgramPoint P) const |
| std::optional< Lattice > | getInState (const CFGBlock *B) const |
| Lattice | getOutState (const CFGBlock *B) const |
| void | dump () const |
Protected Attributes | |
| FactManager & | FactMgr |
A generic, policy-based driver for dataflow analyses.
It combines the dataflow runner and the transferer logic into a single class hierarchy.
The derived class is expected to provide:
| Derived | The CRTP derived class that implements the specific analysis. |
| LatticeType | The dataflow lattice used by the analysis. |
| Dir | The direction of the analysis (Forward or Backward). TODO: Maybe use the dataflow framework! The framework might need changes to support the current comparison done at block-entry. |
Definition at line 57 of file Dataflow.h.
| using clang::lifetimes::internal::DataflowAnalysis< Derived, LatticeType, Dir >::Base = DataflowAnalysis<Derived, Lattice, Dir> |
Definition at line 60 of file Dataflow.h.
| using clang::lifetimes::internal::DataflowAnalysis< Derived, LatticeType, Dir >::Lattice = LatticeType |
Definition at line 59 of file Dataflow.h.
|
inlineexplicitprotected |
Definition at line 80 of file Dataflow.h.
|
inlineprotected |
Definition at line 134 of file Dataflow.h.
|
inlineprotected |
Definition at line 125 of file Dataflow.h.
Referenced by clang::lifetimes::internal::DataflowAnalysis< Derived, Lattice, Dir >::run().
|
inlineprotected |
Definition at line 132 of file Dataflow.h.
Referenced by clang::lifetimes::internal::DataflowAnalysis< Derived, Lattice, Dir >::dump().
|
inlineprotected |
Definition at line 121 of file Dataflow.h.
|
inline |
Definition at line 85 of file Dataflow.h.
|
inline |
Definition at line 185 of file Dataflow.h.
|
inline |
Definition at line 184 of file Dataflow.h.
|
inline |
Definition at line 186 of file Dataflow.h.
|
inline |
Definition at line 187 of file Dataflow.h.
|
inline |
Definition at line 189 of file Dataflow.h.
|
inline |
Definition at line 188 of file Dataflow.h.
|
protected |
Definition at line 78 of file Dataflow.h.