LLZK 0.1.0
Veridise's ZK Language IR
Loading...
Searching...
No Matches
llzk::ModuleIntervalAnalysis Class Reference

#include <IntervalAnalysis.h>

Inheritance diagram for llzk::ModuleIntervalAnalysis:
[legend]
Collaboration diagram for llzk::ModuleIntervalAnalysis:
[legend]

Public Member Functions

 ModuleIntervalAnalysis (mlir::Operation *op)
virtual ~ModuleIntervalAnalysis ()=default
void setField (const Field &f)
void setPropagateInputConstraints (bool prop)
Public Member Functions inherited from llzk::ModuleAnalysis< StructIntervals, IntervalAnalysisContext, StructIntervalAnalysis >
 ModuleAnalysis (mlir::Operation *op)
 Asserts that the analysis is being run on a ModuleOp.
virtual ~ModuleAnalysis ()=default
virtual void runAnalysis (mlir::AnalysisManager &am)
 Run the StructAnalysisTy struct analysis on all child structs.
void ensureAnalysisRun (mlir::AnalysisManager &am)
 Runs the analysis if the results do not already exist.
bool constructed () const
 Check if the results of this analysis have been created for the currently available context.
bool hasResult (component::StructDefOp op) const
 Checks if op has a result contained in the current result map.
const StructIntervalsgetResult (component::StructDefOp op) const
 Asserts that op has a result and returns it.
const StructResults & getCurrentResults () const
 Get the results for the current context.
mlir::DataFlowSolver & getSolver ()

Protected Member Functions

void initializeSolver () override
 Initialize the shared dataflow solver with any common analyses required by the contained struct analyses.
const IntervalAnalysisContextgetContext () const override
 Return the current Context object.
Protected Member Functions inherited from llzk::ModuleAnalysis< StructIntervals, IntervalAnalysisContext, StructIntervalAnalysis >
void constructChildAnalyses (mlir::AnalysisManager &am)
 Construct and run the StructAnalysisTy analyses on each StructDefOp contained in the ModuleOp that is being subjected to this analysis.

Additional Inherited Members

Protected Attributes inherited from llzk::ModuleAnalysis< StructIntervals, IntervalAnalysisContext, StructIntervalAnalysis >
mlir::DataFlowSolver solver

Detailed Description

Definition at line 529 of file IntervalAnalysis.h.

Constructor & Destructor Documentation

◆ ModuleIntervalAnalysis()

llzk::ModuleIntervalAnalysis::ModuleIntervalAnalysis ( mlir::Operation * op)
inline

Definition at line 533 of file IntervalAnalysis.h.

◆ ~ModuleIntervalAnalysis()

virtual llzk::ModuleIntervalAnalysis::~ModuleIntervalAnalysis ( )
virtualdefault

Member Function Documentation

◆ getContext()

const IntervalAnalysisContext & llzk::ModuleIntervalAnalysis::getContext ( ) const
inlineoverrideprotectedvirtual

Return the current Context object.

The context contains parameters that configure or pass information to the analysis.

Implements llzk::ModuleAnalysis< StructIntervals, IntervalAnalysisContext, StructIntervalAnalysis >.

Definition at line 553 of file IntervalAnalysis.h.

◆ initializeSolver()

void llzk::ModuleIntervalAnalysis::initializeSolver ( )
inlineoverrideprotectedvirtual

Initialize the shared dataflow solver with any common analyses required by the contained struct analyses.

Parameters
solver

Implements llzk::ModuleAnalysis< StructIntervals, IntervalAnalysisContext, StructIntervalAnalysis >.

Definition at line 542 of file IntervalAnalysis.h.

◆ setField()

void llzk::ModuleIntervalAnalysis::setField ( const Field & f)
inline

Definition at line 538 of file IntervalAnalysis.h.

◆ setPropagateInputConstraints()

void llzk::ModuleIntervalAnalysis::setPropagateInputConstraints ( bool prop)
inline

Definition at line 539 of file IntervalAnalysis.h.


The documentation for this class was generated from the following file: