class
FlowAnalysisBaseA base class for flow analysis passes that contains non-specialized helper functions.
Derived classes
-
template<typename TDerived, typename TState>class AbstractFlowAnalysis
- An abstract class for flow analysis passes over SystemVerilog code.
-
template<typename TDerived, typename TState>class AbstractFlowAnalysis
- An abstract class for flow analysis passes over SystemVerilog code.
Constructors, destructors, conversion operators
- FlowAnalysisBase(const Symbol& symbol, AnalysisOptions options, Diagnostics* diagnostics = nullptr) protected
- Constructs a new flow analysis pass.
Public functions
- auto getEvalContext() const -> EvalContext&
- Gets an evaluation context for use during analysis.
Public variables
- const Symbol& rootSymbol
- The symbol being analyzed (procedure, function, etc).
- AnalysisOptions options
- Various options controlling the behavior of the analysis.
- bool bad
- Set to true if the analysis detected an error.
Protected variables
-
uint32_
t forLoopSteps - Tracking for how many steps we've taken while analyzing the body of a loop.
- Diagnostics* diagnostics
- An optional diagnostics collection.
- EvalContext evalContext
- An EvalContext that can be used for constant evaluation during analysis.
Variable documentation
Diagnostics* slang:: analysis:: FlowAnalysisBase:: diagnostics protected
An optional diagnostics collection.
If provided, warnings encountered during analysis will be added to it.