|
CIRCT 22.0.0git
|
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 | 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 ®istry) |
| void | registerHWRuntimeCostEstimateInterface (mlir::DialectRegistry ®istry) |
| void | registerSCFRuntimeCostEstimateInterface (mlir::DialectRegistry ®istry) |
| void | initAllExternalInterfaces (mlir::DialectRegistry ®istry) |
| std::unique_ptr< mlir::Pass > | createAddTapsPass (const AddTapsOptions &options={}) |
| std::unique_ptr< mlir::Pass > | createAllocateStatePass () |
| std::unique_ptr< mlir::Pass > | createArcCanonicalizerPass () |
| std::unique_ptr< mlir::Pass > | createDedupPass () |
| std::unique_ptr< mlir::Pass > | createFindInitialVectorsPass () |
| std::unique_ptr< mlir::Pass > | createInferMemoriesPass (const InferMemoriesOptions &options={}) |
| std::unique_ptr< mlir::Pass > | createInlineArcsPass () |
| std::unique_ptr< mlir::Pass > | createIsolateClocksPass () |
| std::unique_ptr< mlir::Pass > | createLatencyRetimingPass () |
| std::unique_ptr< mlir::Pass > | createLowerArcsToFuncsPass () |
| std::unique_ptr< mlir::Pass > | createLowerClocksToFuncsPass () |
| std::unique_ptr< mlir::Pass > | createLowerLUTPass () |
| std::unique_ptr< mlir::Pass > | createLowerVectorizationsPass (LowerVectorizationsModeEnum mode=LowerVectorizationsModeEnum::Full) |
| std::unique_ptr< mlir::Pass > | createMakeTablesPass () |
| std::unique_ptr< mlir::Pass > | createMuxToControlFlowPass () |
| std::unique_ptr< mlir::Pass > | createPrintCostModelPass () |
| std::unique_ptr< mlir::Pass > | createSimplifyVariadicOpsPass () |
| std::unique_ptr< mlir::Pass > | createSplitLoopsPass () |
| std::unique_ptr< mlir::Pass > | createStripSVPass () |
| void | registerReducePatternDialectInterface (mlir::DialectRegistry ®istry) |
| 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. | |
| mlir::LogicalResult circt::arc::collectAndExportModelInfo | ( | mlir::ModuleOp | module, |
| llvm::raw_ostream & | os | ||
| ) |
Collects and exports Arc model info to JSON.
| 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.
| 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.
| std::unique_ptr< Pass > circt::arc::createAddTapsPass | ( | const AddTapsOptions & | options = {} | ) |
Definition at line 103 of file AddTaps.cpp.
| std::unique_ptr< Pass > circt::arc::createAllocateStatePass | ( | ) |
Definition at line 167 of file AllocateState.cpp.
| std::unique_ptr< mlir::Pass > circt::arc::createArcCanonicalizerPass | ( | ) |
Definition at line 828 of file ArcCanonicalizer.cpp.
| std::unique_ptr< Pass > circt::arc::createFindInitialVectorsPass | ( | ) |
Definition at line 277 of file FindInitialVectors.cpp.
| std::unique_ptr< Pass > circt::arc::createInferMemoriesPass | ( | const InferMemoriesOptions & | options = {} | ) |
Definition at line 333 of file InferMemories.cpp.
| std::unique_ptr< Pass > circt::arc::createInlineArcsPass | ( | ) |
Definition at line 363 of file InlineArcs.cpp.
| std::unique_ptr< Pass > circt::arc::createIsolateClocksPass | ( | ) |
Definition at line 225 of file IsolateClocks.cpp.
| std::unique_ptr< Pass > circt::arc::createLatencyRetimingPass | ( | ) |
Definition at line 208 of file LatencyRetiming.cpp.
| std::unique_ptr< Pass > circt::arc::createLowerArcsToFuncsPass | ( | ) |
Definition at line 140 of file LowerArcsToFuncs.cpp.
| std::unique_ptr< Pass > circt::arc::createLowerClocksToFuncsPass | ( | ) |
Definition at line 250 of file LowerClocksToFuncs.cpp.
| std::unique_ptr< Pass > circt::arc::createLowerLUTPass | ( | ) |
Definition at line 328 of file LowerLUT.cpp.
| std::unique_ptr< Pass > circt::arc::createLowerVectorizationsPass | ( | LowerVectorizationsModeEnum | mode = LowerVectorizationsModeEnum::Full | ) |
Definition at line 285 of file LowerVectorizations.cpp.
| std::unique_ptr< Pass > circt::arc::createMakeTablesPass | ( | ) |
Definition at line 185 of file MakeTables.cpp.
| std::unique_ptr< Pass > circt::arc::createMuxToControlFlowPass | ( | ) |
Definition at line 336 of file MuxToControlFlow.cpp.
| std::unique_ptr< Pass > circt::arc::createPrintCostModelPass | ( | ) |
Definition at line 54 of file PrintCostModel.cpp.
| std::unique_ptr< Pass > circt::arc::createSimplifyVariadicOpsPass | ( | ) |
Definition at line 126 of file SimplifyVariadicOps.cpp.
| std::unique_ptr< Pass > circt::arc::createSplitLoopsPass | ( | ) |
Definition at line 427 of file SplitLoops.cpp.
| std::unique_ptr< Pass > circt::arc::createStripSVPass | ( | ) |
Definition at line 185 of file StripSV.cpp.
|
inline |
Definition at line 30 of file ArcInterfaces.h.
References registerCombRuntimeCostEstimateInterface(), registerHWRuntimeCostEstimateInterface(), and registerSCFRuntimeCostEstimateInterface().
| 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().
| void circt::arc::registerCombRuntimeCostEstimateInterface | ( | mlir::DialectRegistry & | registry | ) |
Definition at line 115 of file RuntimeCostEstimateInterfaceImpl.cpp.
Referenced by initAllExternalInterfaces().
| void circt::arc::registerHWRuntimeCostEstimateInterface | ( | mlir::DialectRegistry & | registry | ) |
Definition at line 122 of file RuntimeCostEstimateInterfaceImpl.cpp.
Referenced by initAllExternalInterfaces().
| void circt::arc::registerReducePatternDialectInterface | ( | mlir::DialectRegistry & | registry | ) |
Register the Arc Reduction pattern dialect interface to the given registry.
Definition at line 63 of file ArcReductions.cpp.
| void circt::arc::registerSCFRuntimeCostEstimateInterface | ( | mlir::DialectRegistry & | registry | ) |
Definition at line 129 of file RuntimeCostEstimateInterfaceImpl.cpp.
Referenced by initAllExternalInterfaces().
| void circt::arc::serializeModelInfoToJson | ( | llvm::raw_ostream & | outputStream, |
| llvm::ArrayRef< ModelInfo > | models | ||
| ) |
Serializes models to outputStream in JSON format.