|
CIRCT 23.0.0git
|
Analysis that computes resource usage for Synth dialect operations. More...
#include <ResourceUsageAnalysis.h>

Classes | |
| struct | ModuleResourceUsage |
| Resource usage for a single module, including local and total counts. More... | |
| struct | ResourceUsage |
| Resource usage counts for a set of operations. More... | |
Public Member Functions | |
| ResourceUsageAnalysis (mlir::Operation *moduleOp, mlir::AnalysisManager &am) | |
| ModuleResourceUsage * | getResourceUsage (igraph::ModuleOpInterface module) |
| Get resource usage for a module. | |
| ModuleResourceUsage * | getResourceUsage (StringAttr moduleName) |
| igraph::InstanceGraph * | getInstanceGraph () const |
| Get the instance graph used by this analysis. | |
Private Attributes | |
| DenseMap< StringAttr, std::unique_ptr< ModuleResourceUsage > > | designUsageCache |
| Cache of computed resource usage per module. | |
| igraph::InstanceGraph * | instanceGraph |
| Instance graph for module hierarchy traversal. | |
Analysis that computes resource usage for Synth dialect operations.
This analysis walks module hierarchies and counts resources such as:
Definition at line 37 of file ResourceUsageAnalysis.h.
| ResourceUsageAnalysis::ResourceUsageAnalysis | ( | mlir::Operation * | moduleOp, |
| mlir::AnalysisManager & | am | ||
| ) |
Definition at line 93 of file ResourceUsageAnalysis.cpp.
|
inline |
Get the instance graph used by this analysis.
Definition at line 91 of file ResourceUsageAnalysis.h.
References instanceGraph.
| ResourceUsageAnalysis::ModuleResourceUsage * ResourceUsageAnalysis::getResourceUsage | ( | igraph::ModuleOpInterface | module | ) |
Get resource usage for a module.
Definition at line 117 of file ResourceUsageAnalysis.cpp.
References designUsageCache, instanceGraph, and circt::igraph::InstanceGraph::lookup().
Referenced by getResourceUsage().
| ResourceUsageAnalysis::ModuleResourceUsage * ResourceUsageAnalysis::getResourceUsage | ( | StringAttr | moduleName | ) |
Definition at line 98 of file ResourceUsageAnalysis.cpp.
References designUsageCache, getResourceUsage(), instanceGraph, and circt::igraph::InstanceGraph::lookup().
|
private |
Cache of computed resource usage per module.
Definition at line 95 of file ResourceUsageAnalysis.h.
Referenced by getResourceUsage(), and getResourceUsage().
|
private |
Instance graph for module hierarchy traversal.
Definition at line 98 of file ResourceUsageAnalysis.h.
Referenced by getInstanceGraph(), getResourceUsage(), and getResourceUsage().