| 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 defaultoffset, and adds it tostates. | |
| mlir::LogicalResult | collectModels (mlir::ModuleOp module, llvm::SmallVector< ModelInfo > &models) | 
| Collects information about all Arc models in the provided module, and adds it tomodels. | |
| void | serializeModelInfoToJson (llvm::raw_ostream &outputStream, llvm::ArrayRef< ModelInfo > models) | 
| Serializes modelstooutputStreamin 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.
Referenced by registerArcModelInfoTranslation().
| 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.
Referenced by circt::arc::ArcReducePatternDialectInterface::populateReducePatterns().
| std::unique_ptr< Pass > circt::arc::createDedupPass | ( | ) | 
Definition at line 744 of file Dedup.cpp.
Referenced by circt::arc::ArcReducePatternDialectInterface::populateReducePatterns().
| 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.
Referenced by circt::arc::ArcReducePatternDialectInterface::populateReducePatterns().
| 
 | 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.
References collectAndExportModelInfo().
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.