CIRCT
20.0.0git
|
Classes | |
class | FirtoolOptions |
Set of options used to control the behavior of the firtool pipeline. More... | |
Functions | |
void | registerFirtoolCLOptions () |
Register a set of useful command-line options that can be used to configure various flags within the MLIRContext. More... | |
LogicalResult | populatePreprocessTransforms (mlir::PassManager &pm, const FirtoolOptions &opt) |
LogicalResult | populateCHIRRTLToLowFIRRTL (mlir::PassManager &pm, const FirtoolOptions &opt, StringRef inputFilename) |
LogicalResult | populateLowFIRRTLToHW (mlir::PassManager &pm, const FirtoolOptions &opt) |
LogicalResult | populateHWToSV (mlir::PassManager &pm, const FirtoolOptions &opt) |
LogicalResult | populateExportVerilog (mlir::PassManager &pm, const FirtoolOptions &opt, std::unique_ptr< llvm::raw_ostream > os) |
LogicalResult | populateExportVerilog (mlir::PassManager &pm, const FirtoolOptions &opt, llvm::raw_ostream &os) |
LogicalResult | populateExportSplitVerilog (mlir::PassManager &pm, const FirtoolOptions &opt, llvm::StringRef directory) |
LogicalResult | populateFinalizeIR (mlir::PassManager &pm, const FirtoolOptions &opt) |
LogicalResult | populateHWToBTOR2 (mlir::PassManager &pm, const FirtoolOptions &opt, llvm::raw_ostream &os) |
LogicalResult circt::firtool::populateCHIRRTLToLowFIRRTL | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
StringRef | inputFilename | ||
) |
Definition at line 55 of file Firtool.cpp.
References circt::firrtl::PreserveAggregate::All, circt::firrtl::createAddSeqMemPortsPass(), circt::firrtl::createAdvancedLayerSinkPass(), circt::firrtl::createAssignOutputDirsPass(), circt::firrtl::createBlackBoxReaderPass(), circt::firrtl::createCheckCombLoopsPass(), circt::firrtl::createCreateCompanionAssume(), circt::firrtl::createCreateSiFiveMetadataPass(), circt::arc::createDedupPass(), circt::firrtl::createDropConstPass(), circt::firrtl::createDropNamesPass(), circt::firrtl::createEmitOMIRPass(), circt::firrtl::createExpandWhensPass(), circt::createExportChiselInterfacePass(), circt::createExportSplitChiselInterfacePass(), circt::firrtl::createExtractInstancesPass(), circt::firrtl::createFlattenMemoryPass(), circt::firrtl::createGrandCentralPass(), circt::firrtl::createIMConstPropPass(), circt::firrtl::createIMDeadCodeElimPass(), circt::firrtl::createInferReadWritePass(), circt::firrtl::createInferResetsPass(), circt::firrtl::createInferWidthsPass(), circt::firrtl::createInjectDUTHierarchyPass(), circt::firrtl::createInlinerPass(), circt::firrtl::createInnerSymbolDCEPass(), circt::firrtl::createLayerMergePass(), circt::firrtl::createLayerSinkPass(), circt::firrtl::createLowerCHIRRTLPass(), circt::firrtl::createLowerFIRRTLTypesPass(), circt::firrtl::createLowerLayersPass(), circt::firrtl::createLowerMatchesPass(), circt::firrtl::createLowerMemoryPass(), circt::firrtl::createLowerSignaturesPass(), circt::firrtl::createMemToRegOfVecPass(), circt::firrtl::createMergeConnectionsPass(), circt::firrtl::createPassiveWiresPass(), circt::firrtl::createPrefixModulesPass(), circt::firrtl::createProbesToSignalsPass(), circt::firrtl::createRandomizeRegisterInitPass(), circt::firrtl::createRegisterOptimizerPass(), circt::firrtl::createSFCCompatPass(), circt::createSimpleCanonicalizerPass(), circt::firrtl::createSpecializeLayersPass(), circt::firrtl::createVBToBVPass(), circt::firrtl::createVectorizationPass(), circt::firtool::FirtoolOptions::getBlackBoxRootPath(), circt::firtool::FirtoolOptions::getChiselInterfaceOutputDirectory(), circt::firtool::FirtoolOptions::getCompanionMode(), circt::firtool::FirtoolOptions::getOmirOutputFile(), circt::firtool::FirtoolOptions::getOutputFilename(), circt::firtool::FirtoolOptions::getPreserveAggregate(), circt::firtool::FirtoolOptions::getPreserveMode(), circt::firtool::FirtoolOptions::getReplaceSequentialMemoriesFile(), circt::firtool::FirtoolOptions::isDefaultOutputFilename(), circt::firtool::FirtoolOptions::isRandomEnabled(), circt::firtool::FirtoolOptions::shouldAddCompanionAssume(), circt::firtool::FirtoolOptions::shouldAdvancedLayerSink(), circt::firtool::FirtoolOptions::shouldConvertProbesToSignals(), circt::firtool::FirtoolOptions::shouldConvertVecOfBundle(), circt::firtool::FirtoolOptions::shouldDedup(), circt::firtool::FirtoolOptions::shouldDisableAggressiveMergeConnections(), circt::firtool::FirtoolOptions::shouldDisableOptimization(), circt::firtool::FirtoolOptions::shouldEmitOMIR(), circt::firtool::FirtoolOptions::shouldExportChiselInterface(), circt::firtool::FirtoolOptions::shouldIgnoreReadEnableMemories(), circt::firtool::FirtoolOptions::shouldLowerMemories(), and circt::firtool::FirtoolOptions::shouldReplaceSequentialMemories().
Referenced by circtFirtoolPopulateCHIRRTLToLowFIRRTL().
LogicalResult circt::firtool::populateExportSplitVerilog | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
llvm::StringRef | directory | ||
) |
Definition at line 399 of file Firtool.cpp.
References circt::createExportSplitVerilogPass(), and detail::populatePrepareForExportVerilog().
Referenced by circtFirtoolPopulateExportSplitVerilog().
LogicalResult circt::firtool::populateExportVerilog | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
llvm::raw_ostream & | os | ||
) |
Definition at line 389 of file Firtool.cpp.
References circt::createExportVerilogPass(), and detail::populatePrepareForExportVerilog().
LogicalResult circt::firtool::populateExportVerilog | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
std::unique_ptr< llvm::raw_ostream > | os | ||
) |
Definition at line 380 of file Firtool.cpp.
References circt::createExportVerilogPass(), and detail::populatePrepareForExportVerilog().
Referenced by circtFirtoolPopulateExportVerilog().
LogicalResult circt::firtool::populateFinalizeIR | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 409 of file Firtool.cpp.
References circt::firrtl::createFinalizeIRPass(), and circt::om::createFreezePathsPass().
Referenced by circtFirtoolPopulateFinalizeIR().
LogicalResult circt::firtool::populateHWToBTOR2 | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
llvm::raw_ostream & | os | ||
) |
Definition at line 417 of file Firtool.cpp.
References circt::createConvertHWToBTOR2Pass(), circt::hw::createFlattenModulesPass(), and circt::createLowerLTLToCorePass().
Referenced by circtFirtoolpopulateHWToBTOR2().
LogicalResult circt::firtool::populateHWToSV | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 288 of file Firtool.cpp.
References circt::seq::createExternalizeClockGatePass(), circt::sv::createHWCleanupPass(), circt::seq::createHWMemSimImplPass(), circt::createLowerSeqToSVPass(), circt::createLowerSimToSVPass(), circt::createLowerVerifToSVPass(), circt::createSimpleCanonicalizerPass(), circt::sv::createSVExtractTestCodePass(), circt::hw::createVerifyInnerRefNamespacePass(), circt::om::createVerifyObjectFieldsPass(), circt::firtool::FirtoolOptions::getClockGateOptions(), circt::firtool::FirtoolOptions::isRandomEnabled(), circt::firtool::FirtoolOptions::shouldAddMuxPragmas(), circt::firtool::FirtoolOptions::shouldAddVivadoRAMAddressConflictSynthesisBugWorkaround(), circt::firtool::FirtoolOptions::shouldDisableOptimization(), circt::firtool::FirtoolOptions::shouldEmitSeparateAlwaysBlocks(), circt::firtool::FirtoolOptions::shouldEtcDisableInstanceExtraction(), circt::firtool::FirtoolOptions::shouldEtcDisableModuleInlining(), circt::firtool::FirtoolOptions::shouldEtcDisableRegisterExtraction(), circt::firtool::FirtoolOptions::shouldExtractTestCode(), circt::firtool::FirtoolOptions::shouldIgnoreReadEnableMemories(), and circt::firtool::FirtoolOptions::shouldReplaceSequentialMemories().
Referenced by circtFirtoolPopulateHWToSV().
LogicalResult circt::firtool::populateLowFIRRTLToHW | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 247 of file Firtool.cpp.
References circt::firrtl::createLintingPass(), circt::firrtl::createLowerClassesPass(), circt::firrtl::createLowerDPIPass(), circt::createLowerFIRRTLToHWPass(), circt::firrtl::createLowerXMRPass(), circt::firrtl::createResolveTracesPass(), circt::createSimpleCanonicalizerPass(), circt::hw::createVerifyInnerRefNamespacePass(), circt::om::createVerifyObjectFieldsPass(), circt::firtool::FirtoolOptions::getOutputAnnotationFilename(), circt::firtool::FirtoolOptions::getVerificationFlavor(), circt::firtool::FirtoolOptions::shouldDisableOptimization(), and circt::firtool::FirtoolOptions::shouldEnableAnnotationWarning().
Referenced by circtFirtoolPopulateLowFIRRTLToHW().
LogicalResult circt::firtool::populatePreprocessTransforms | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 27 of file Firtool.cpp.
References circt::firrtl::createCheckLayers(), circt::firrtl::createCheckRecursiveInstantiation(), circt::firrtl::createLowerFIRRTLAnnotationsPass(), circt::firrtl::createLowerIntmodulesPass(), circt::firrtl::createLowerIntrinsicsPass(), circt::firrtl::createLowerOpenAggsPass(), circt::firrtl::createMaterializeDebugInfoPass(), circt::firrtl::createResolvePathsPass(), circt::firtool::FirtoolOptions::shouldAllowAddingPortsOnPublic(), circt::firtool::FirtoolOptions::shouldDisableClasslessAnnotations(), circt::firtool::FirtoolOptions::shouldDisableUnknownAnnotations(), circt::firtool::FirtoolOptions::shouldEnableDebugInfo(), circt::firtool::FirtoolOptions::shouldFixupEICGWrapper(), and circt::firtool::FirtoolOptions::shouldLowerNoRefTypePortAnnotations().
Referenced by circtFirtoolPopulatePreprocessTransforms().
void circt::firtool::registerFirtoolCLOptions | ( | ) |
Register a set of useful command-line options that can be used to configure various flags within the MLIRContext.
These flags are used when constructing an MLIR context for initialization.
Definition at line 742 of file Firtool.cpp.
References clOptions.