CIRCT 23.0.0git
Loading...
Searching...
No Matches
Namespaces | Classes | Functions
circt::arc Namespace Reference

Namespaces

namespace  runtime
 

Classes

class  ArcCostModel
 
struct  ArcReducePatternDialectInterface
 A dialect interface to provide reduction patterns to a reducer tool. More...
 
struct  ModelInfo
 Gathers information about a given Arc model. More...
 
struct  ModelInfoAnalysis
 
struct  OperationCosts
 
class  RuntimeCostEstimateDialectInterface
 A dialect interface to get runtime cost estimates of MLIR operations. More...
 
struct  StateInfo
 Gathers information about a given Arc state. More...
 

Functions

void registerCombRuntimeCostEstimateInterface (mlir::DialectRegistry &registry)
 
void registerHWRuntimeCostEstimateInterface (mlir::DialectRegistry &registry)
 
void registerSCFRuntimeCostEstimateInterface (mlir::DialectRegistry &registry)
 
void initAllExternalInterfaces (mlir::DialectRegistry &registry)
 
void registerReducePatternDialectInterface (mlir::DialectRegistry &registry)
 Register the Arc Reduction pattern dialect interface to the given registry.
 
mlir::LogicalResult collectStates (mlir::Value storage, unsigned offset, llvm::SmallVector< StateInfo > &states)
 Collects information about states within the provided Arc model storage storage, assuming default offset, and adds it to states.
 
mlir::LogicalResult collectModels (mlir::ModuleOp module, llvm::SmallVector< ModelInfo > &models)
 Collects information about all Arc models in the provided module, and adds it to models.
 
void serializeModelInfoToJson (llvm::raw_ostream &outputStream, llvm::ArrayRef< ModelInfo > models)
 Serializes models to outputStream in JSON format.
 
mlir::LogicalResult collectAndExportModelInfo (mlir::ModuleOp module, llvm::raw_ostream &os)
 Collects and exports Arc model info to JSON.
 
void registerArcModelInfoTranslation ()
 Registers CIRCT translation from Arc to JSON model info.
 

Function Documentation

◆ collectAndExportModelInfo()

mlir::LogicalResult circt::arc::collectAndExportModelInfo ( mlir::ModuleOp  module,
llvm::raw_ostream &  os 
)

Collects and exports Arc model info to JSON.

◆ collectModels()

mlir::LogicalResult circt::arc::collectModels ( mlir::ModuleOp  module,
llvm::SmallVector< ModelInfo > &  models 
)

Collects information about all Arc models in the provided module, and adds it to models.

◆ collectStates()

mlir::LogicalResult circt::arc::collectStates ( mlir::Value  storage,
unsigned  offset,
llvm::SmallVector< StateInfo > &  states 
)

Collects information about states within the provided Arc model storage storage, assuming default offset, and adds it to states.

Referenced by circt::arc::ModelInfoAnalysis::ModelInfoAnalysis().

◆ initAllExternalInterfaces()

void circt::arc::initAllExternalInterfaces ( mlir::DialectRegistry &  registry)
inline

◆ registerArcModelInfoTranslation()

void circt::arc::registerArcModelInfoTranslation ( )

Registers CIRCT translation from Arc to JSON model info.

Definition at line 33 of file ModelInfoExport.cpp.

Referenced by circt::registerAllTranslations().

◆ registerCombRuntimeCostEstimateInterface()

void circt::arc::registerCombRuntimeCostEstimateInterface ( mlir::DialectRegistry &  registry)

Definition at line 115 of file RuntimeCostEstimateInterfaceImpl.cpp.

Referenced by initAllExternalInterfaces().

◆ registerHWRuntimeCostEstimateInterface()

void circt::arc::registerHWRuntimeCostEstimateInterface ( mlir::DialectRegistry &  registry)

Definition at line 122 of file RuntimeCostEstimateInterfaceImpl.cpp.

Referenced by initAllExternalInterfaces().

◆ registerReducePatternDialectInterface()

void circt::arc::registerReducePatternDialectInterface ( mlir::DialectRegistry &  registry)

Register the Arc Reduction pattern dialect interface to the given registry.

Definition at line 62 of file ArcReductions.cpp.

◆ registerSCFRuntimeCostEstimateInterface()

void circt::arc::registerSCFRuntimeCostEstimateInterface ( mlir::DialectRegistry &  registry)

Definition at line 129 of file RuntimeCostEstimateInterfaceImpl.cpp.

Referenced by initAllExternalInterfaces().

◆ serializeModelInfoToJson()

void circt::arc::serializeModelInfoToJson ( llvm::raw_ostream &  outputStream,
llvm::ArrayRef< ModelInfo models 
)

Serializes models to outputStream in JSON format.