|
LLZK 0.1.0
Veridise's ZK Language IR
|
This file implements sparse data-flow analysis using the data-flow analysis framework. More...
#include <mlir/Analysis/DataFlow/SparseAnalysis.h>#include <mlir/Analysis/DataFlowFramework.h>#include <mlir/IR/SymbolTable.h>#include <mlir/Interfaces/CallInterfaces.h>#include <mlir/Interfaces/ControlFlowInterfaces.h>#include <llvm/ADT/SmallPtrSet.h>Go to the source code of this file.
Classes | |
| class | llzk::dataflow::AbstractSparseForwardDataFlowAnalysis |
| LLZK: This class has been ported from the MLIR DenseAnalysis utilities to allow for the use of custom LLZK symbol lookup logic. More... | |
| class | llzk::dataflow::SparseForwardDataFlowAnalysis< StateT > |
| A sparse forward data-flow analysis for propagating SSA value lattices across the IR by implementing transfer functions for operations. More... | |
Namespaces | |
| namespace | llzk |
| namespace | llzk::dataflow |
Typedefs | |
| using | llzk::dataflow::AbstractSparseLattice = mlir::dataflow::AbstractSparseLattice |
This file implements sparse data-flow analysis using the data-flow analysis framework.
The analysis is forward and conditional and uses the results of dead code analysis to prune dead code during the analysis.
This file has been ported from the MLIR analysis so that it may be tailored to work for LLZK modules, as LLZK modules have different symbol lookup mechanisms that are currently incompatible with the builtin MLIR dataflow analyses. This file is mostly left as original in MLIR, with notes added where changes have been made.
Definition in file SparseAnalysis.h.