CIRCT
19.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 circt::firtool::populateCHIRRTLToLowFIRRTL | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
StringRef | inputFilename | ||
) |
Definition at line 48 of file Firtool.cpp.
References circt::firrtl::PreserveAggregate::All, circt::firrtl::createAddSeqMemPortsPass(), 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::createHoistPassthroughPass(), 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::createProbeDCEPass(), circt::firrtl::createRandomizeRegisterInitPass(), circt::firrtl::createRegisterOptimizerPass(), circt::firrtl::createSFCCompatPass(), circt::createSimpleCanonicalizerPass(), 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::shouldConvertVecOfBundle(), circt::firtool::FirtoolOptions::shouldDedup(), circt::firtool::FirtoolOptions::shouldDisableAggressiveMergeConnections(), circt::firtool::FirtoolOptions::shouldDisableHoistingHWPassthrough(), circt::firtool::FirtoolOptions::shouldDisableOptimization(), circt::firtool::FirtoolOptions::shouldEmitOMIR(), circt::firtool::FirtoolOptions::shouldExportChiselInterface(), circt::firtool::FirtoolOptions::shouldIgnoreReadEnableMemories(), circt::firtool::FirtoolOptions::shouldLowerMemories(), and circt::firtool::FirtoolOptions::shouldReplicateSequentialMemories().
Referenced by circtFirtoolPopulateCHIRRTLToLowFIRRTL().
LogicalResult circt::firtool::populateExportSplitVerilog | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt, | ||
llvm::StringRef | directory | ||
) |
Definition at line 365 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 355 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 346 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 375 of file Firtool.cpp.
References circt::firrtl::createFinalizeIRPass(), and circt::om::createFreezePathsPass().
Referenced by circtFirtoolPopulateFinalizeIR().
LogicalResult circt::firtool::populateHWToSV | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 264 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::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::shouldReplicateSequentialMemories().
Referenced by circtFirtoolPopulateHWToSV().
LogicalResult circt::firtool::populateLowFIRRTLToHW | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 231 of file Firtool.cpp.
References circt::firrtl::createLintingPass(), circt::firrtl::createLowerClassesPass(), circt::createLowerFIRRTLToHWPass(), circt::firrtl::createLowerXMRPass(), circt::firrtl::createResolveTracesPass(), circt::createSimpleCanonicalizerPass(), circt::hw::createVerifyInnerRefNamespacePass(), circt::firtool::FirtoolOptions::getOutputAnnotationFilename(), circt::firtool::FirtoolOptions::shouldDisableOptimization(), circt::firtool::FirtoolOptions::shouldEmitChiselAssertsAsSVA(), and circt::firtool::FirtoolOptions::shouldEnableAnnotationWarning().
Referenced by circtFirtoolPopulateLowFIRRTLToHW().
LogicalResult circt::firtool::populatePreprocessTransforms | ( | mlir::PassManager & | pm, |
const FirtoolOptions & | opt | ||
) |
Definition at line 26 of file Firtool.cpp.
References circt::firrtl::createLowerFIRRTLAnnotationsPass(), circt::firrtl::createLowerIntrinsicsPass(), circt::firrtl::createLowerOpenAggsPass(), circt::firrtl::createMaterializeDebugInfoPass(), circt::firrtl::createResolvePathsPass(), 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 680 of file Firtool.cpp.
References clOptions.