|
CIRCT 23.0.0git
|
Set of options used to control the behavior of the firtool pipeline. More...
#include <Firtool.h>

Public Types | |
| enum | BuildMode { BuildModeDefault , BuildModeDebug , BuildModeRelease } |
| enum class | RandomKind { None , Mem , Reg , All } |
| enum class | DomainMode { Strip , Disable , Check , Infer , InferAll } |
Static Public Member Functions | |
| static constexpr std::optional< firrtl::InferDomainsMode > | toInferDomainsPassMode (DomainMode mode) |
| Convert the "domain mode" firtool option to a "firrtl::InferDomainsMode", the configuration for a pass. | |
| static RandomKind | mergeRandomKind (RandomKind current, RandomKind incoming) |
| Advance the disabled-randomization lattice. | |
Set of options used to control the behavior of the firtool pipeline.
|
strong |
|
strong |
| circt::firtool::FirtoolOptions::FirtoolOptions | ( | ) |
Definition at line 832 of file Firtool.cpp.
References addMuxPragmas, addVivadoRAMAddressConflictSynthesisBugWorkaround, blackBoxRootPath, buildMode, ckgEnableName, ckgInputName, ckgModuleName, ckgOutputName, ckgTestEnableName, clOptions, companionMode, dedupClasses, disableAggressiveMergeConnections, disableAnnotationsClassless, disableAnnotationsUnknown, disableLayerSink, disableOptimization, disableRandom, disableWireElimination, domainMode, emitAllBindFiles, emitSeparateAlwaysBlocks, enableAnnotationWarning, enableDebugInfo, exportModuleHierarchy, fixupEICGWrapper, ignoreReadEnableMem, inlineInputOnlyModules, lintStaticAsserts, lintXmrsInDesign, lowerAnnotationsNoRefTypePorts, lowerMemories, lowerToCore, noDedup, noViews, outputAnnotationFilename, outputFilename, preserveAggregate, preserveMode, probesToSignals, replSeqMem, replSeqMemFile, selectDefaultInstanceChoice, stripDebugInfo, stripFirDebugInfo, symbolicValueLowering, vbToBV, and verificationFlavor.
|
inline |
Definition at line 103 of file Firtool.h.
References blackBoxRootPath.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 116 of file Firtool.h.
References ckgEnableName, ckgInputName, ckgInstName, ckgModuleName, ckgOutputName, and ckgTestEnableName.
Referenced by circt::firtool::populateHWToSV().
|
inline |
Definition at line 112 of file Firtool.h.
References companionMode.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 186 of file Firtool.h.
References domainMode.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 182 of file Firtool.h.
References emitAllBindFiles.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 178 of file Firtool.h.
References lintStaticAsserts.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 180 of file Firtool.h.
References lintXmrsInDesign.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 114 of file Firtool.h.
References noViews.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 105 of file Firtool.h.
References outputAnnotationFilename.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 102 of file Firtool.h.
References outputFilename.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 109 of file Firtool.h.
References preserveAggregate.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 90 of file Firtool.h.
References buildMode, BuildModeDebug, BuildModeDefault, BuildModeRelease, circt::firrtl::PreserveValues::Named, circt::firrtl::PreserveValues::None, and preserveMode.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 104 of file Firtool.h.
References replSeqMemFile.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 173 of file Firtool.h.
References symbolicValueLowering.
Referenced by circt::firtool::populateHWToSV().
|
inline |
Definition at line 159 of file Firtool.h.
References verificationFlavor.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 131 of file Firtool.h.
References outputFilename.
|
inline |
Definition at line 71 of file Firtool.h.
References All, and disableRandom.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL(), and circt::firtool::populateHWToSV().
|
inline |
Definition at line 85 of file Firtool.h.
References disableRandom, and mergeRandomKind().
|
inlinestatic |
Advance the disabled-randomization lattice.
Calling this twice with the two individual kinds is equivalent to calling it once with All.
Definition at line 77 of file Firtool.h.
Referenced by mergeDisableRandom().
|
inline |
Definition at line 316 of file Firtool.h.
References addMuxPragmas.
|
inline |
Definition at line 332 of file Firtool.h.
References addVivadoRAMAddressConflictSynthesisBugWorkaround.
|
inline |
Definition at line 281 of file Firtool.h.
References blackBoxRootPath.
|
inline |
|
inline |
Definition at line 352 of file Firtool.h.
References ckgEnableName.
|
inline |
Definition at line 342 of file Firtool.h.
References ckgInputName.
|
inline |
Definition at line 337 of file Firtool.h.
References ckgModuleName.
|
inline |
Definition at line 347 of file Firtool.h.
References ckgOutputName.
|
inline |
Definition at line 357 of file Firtool.h.
References ckgTestEnableName.
|
inline |
Definition at line 121 of file Firtool.h.
References ckgEnableName, ckgInputName, ckgInstName, ckgModuleName, ckgOutputName, and ckgTestEnableName.
|
inline |
Definition at line 261 of file Firtool.h.
References companionMode.
|
inline |
Definition at line 209 of file Firtool.h.
References probesToSignals.
|
inline |
Definition at line 256 of file Firtool.h.
References dedupClasses.
|
inline |
Definition at line 271 of file Firtool.h.
References disableAggressiveMergeConnections.
|
inline |
Definition at line 199 of file Firtool.h.
References disableAnnotationsClassless.
|
inline |
Definition at line 382 of file Firtool.h.
References disableCSEinClasses.
|
inline |
Definition at line 236 of file Firtool.h.
References disableLayerSink.
|
inline |
Definition at line 241 of file Firtool.h.
References disableOptimization.
|
inline |
Definition at line 194 of file Firtool.h.
References disableAnnotationsUnknown.
|
inline |
Definition at line 397 of file Firtool.h.
References disableWireElimination.
|
inline |
Definition at line 422 of file Firtool.h.
References domainMode.
|
inline |
Definition at line 412 of file Firtool.h.
References emitAllBindFiles.
|
inline |
Definition at line 326 of file Firtool.h.
References emitSeparateAlwaysBlocks.
|
inline |
Definition at line 306 of file Firtool.h.
References enableAnnotationWarning.
|
inline |
Definition at line 226 of file Firtool.h.
References enableDebugInfo.
|
inline |
Definition at line 362 of file Firtool.h.
References exportModuleHierarchy.
|
inline |
Definition at line 377 of file Firtool.h.
References fixupEICGWrapper.
|
inline |
Definition at line 296 of file Firtool.h.
References ignoreReadEnableMem.
|
inline |
Definition at line 417 of file Firtool.h.
References inlineInputOnlyModules.
|
inline |
Definition at line 402 of file Firtool.h.
References lintStaticAsserts.
|
inline |
Definition at line 407 of file Firtool.h.
References lintXmrsInDesign.
|
inline |
Definition at line 204 of file Firtool.h.
References lowerAnnotationsNoRefTypePorts.
|
inline |
Definition at line 276 of file Firtool.h.
References lowerMemories.
|
inline |
Definition at line 311 of file Firtool.h.
References lowerToCore.
|
inline |
|
inline |
|
inline |
Definition at line 301 of file Firtool.h.
References outputAnnotationFilename.
|
inline |
Definition at line 189 of file Firtool.h.
References outputFilename.
|
inline |
Definition at line 215 of file Firtool.h.
References preserveAggregate.
|
inline |
Definition at line 221 of file Firtool.h.
References preserveMode.
|
inline |
Definition at line 286 of file Firtool.h.
References replSeqMem.
|
inline |
Definition at line 291 of file Firtool.h.
References replSeqMemFile.
|
inline |
Definition at line 387 of file Firtool.h.
References selectDefaultInstanceChoice.
|
inline |
Definition at line 372 of file Firtool.h.
References stripDebugInfo.
|
inline |
Definition at line 367 of file Firtool.h.
References stripFirDebugInfo.
|
inline |
Definition at line 392 of file Firtool.h.
References symbolicValueLowering.
|
inline |
|
inline |
Definition at line 321 of file Firtool.h.
References verificationFlavor.
|
inline |
Definition at line 163 of file Firtool.h.
References addMuxPragmas.
Referenced by circt::firtool::populateHWToSV().
|
inline |
Definition at line 164 of file Firtool.h.
References addVivadoRAMAddressConflictSynthesisBugWorkaround.
Referenced by circt::firtool::populateHWToSV().
|
inline |
Definition at line 141 of file Firtool.h.
References probesToSignals.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 150 of file Firtool.h.
References vbToBV.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 146 of file Firtool.h.
References noDedup.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 147 of file Firtool.h.
References dedupClasses.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 154 of file Firtool.h.
References disableAggressiveMergeConnections.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 135 of file Firtool.h.
References disableAnnotationsClassless.
Referenced by circt::firtool::populatePreprocessTransforms().
|
inline |
Definition at line 168 of file Firtool.h.
References disableCSEinClasses.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 143 of file Firtool.h.
References disableLayerSink.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 144 of file Firtool.h.
References disableOptimization.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL(), circt::firtool::populateHWToSV(), circt::firtool::populateLowFIRRTLToHW(), and detail::populatePrepareForExportVerilog().
|
inline |
Definition at line 132 of file Firtool.h.
References disableAnnotationsUnknown.
Referenced by circt::firtool::populatePreprocessTransforms().
|
inline |
Definition at line 176 of file Firtool.h.
References disableWireElimination.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 160 of file Firtool.h.
References emitSeparateAlwaysBlocks.
Referenced by circt::firtool::populateHWToSV().
|
inline |
Definition at line 157 of file Firtool.h.
References enableAnnotationWarning.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 148 of file Firtool.h.
References enableDebugInfo.
Referenced by circt::firtool::populatePreprocessTransforms().
|
inline |
Definition at line 153 of file Firtool.h.
References exportModuleHierarchy.
Referenced by detail::populatePrepareForExportVerilog().
|
inline |
Definition at line 167 of file Firtool.h.
References fixupEICGWrapper.
Referenced by circt::firtool::populatePreprocessTransforms().
|
inline |
Definition at line 149 of file Firtool.h.
References ignoreReadEnableMem.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL(), and circt::firtool::populateHWToSV().
|
inline |
Definition at line 184 of file Firtool.h.
References inlineInputOnlyModules.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 145 of file Firtool.h.
References lowerMemories.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 138 of file Firtool.h.
References lowerAnnotationsNoRefTypePorts.
Referenced by circt::firtool::populatePreprocessTransforms().
|
inline |
Definition at line 158 of file Firtool.h.
References lowerToCore.
Referenced by circt::firtool::populateLowFIRRTLToHW().
|
inline |
Definition at line 142 of file Firtool.h.
References replSeqMem.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL(), and circt::firtool::populateHWToSV().
|
inline |
Definition at line 169 of file Firtool.h.
References selectDefaultInstanceChoice.
Referenced by circt::firtool::populateCHIRRTLToLowFIRRTL().
|
inline |
Definition at line 151 of file Firtool.h.
References stripDebugInfo.
Referenced by detail::populatePrepareForExportVerilog().
|
inline |
Definition at line 152 of file Firtool.h.
References stripFirDebugInfo.
Referenced by detail::populatePrepareForExportVerilog().
|
inlinestaticconstexpr |
Convert the "domain mode" firtool option to a "firrtl::InferDomainsMode", the configuration for a pass.
Definition at line 56 of file Firtool.h.
References circt::firrtl::Check, Check, Disable, circt::firrtl::Infer, Infer, circt::firrtl::InferAll, InferAll, circt::firrtl::Strip, and Strip.
|
private |
Definition at line 457 of file Firtool.h.
Referenced by FirtoolOptions(), setAddMuxPragmas(), and shouldAddMuxPragmas().
|
private |
Definition at line 460 of file Firtool.h.
Referenced by FirtoolOptions(), setAddVivadoRAMAddressConflictSynthesisBugWorkaround(), and shouldAddVivadoRAMAddressConflictSynthesisBugWorkaround().
|
private |
Definition at line 449 of file Firtool.h.
Referenced by FirtoolOptions(), getBlackBoxRootPath(), and setBlackBoxRootPath().
|
private |
Definition at line 439 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveMode(), and setBuildMode().
|
private |
Definition at line 464 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgEnableName(), and setClockGateOptions().
|
private |
Definition at line 462 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgInputName(), and setClockGateOptions().
|
private |
Definition at line 466 of file Firtool.h.
Referenced by getClockGateOptions(), and setClockGateOptions().
|
private |
Definition at line 461 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgModuleName(), and setClockGateOptions().
|
private |
Definition at line 463 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgOutputName(), and setClockGateOptions().
|
private |
Definition at line 465 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgTestEnableName(), and setClockGateOptions().
|
private |
Definition at line 445 of file Firtool.h.
Referenced by FirtoolOptions(), getCompanionMode(), and setCompanionMode().
|
private |
Definition at line 444 of file Firtool.h.
Referenced by FirtoolOptions(), setDedupClasses(), and shouldDedupClasses().
|
private |
Definition at line 447 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableAggressiveMergeConnections(), and shouldDisableAggressiveMergeConnections().
|
private |
Definition at line 432 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableAnnotationsClassless(), and shouldDisableClasslessAnnotations().
|
private |
Definition at line 431 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableUnknownAnnotations(), and shouldDisableUnknownAnnotations().
|
private |
Definition at line 471 of file Firtool.h.
Referenced by setDisableCSEinClasses(), and shouldDisableCSEinClasses().
|
private |
Definition at line 440 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableLayerSink(), and shouldDisableLayerSink().
|
private |
Definition at line 441 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableOptimization(), and shouldDisableOptimization().
|
private |
Definition at line 453 of file Firtool.h.
Referenced by FirtoolOptions(), isRandomEnabled(), and mergeDisableRandom().
|
private |
Definition at line 474 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableWireElimination(), and shouldDisableWireElimination().
|
private |
Definition at line 479 of file Firtool.h.
Referenced by FirtoolOptions(), getDomainMode(), and setDomainMode().
|
private |
Definition at line 477 of file Firtool.h.
Referenced by FirtoolOptions(), getEmitAllBindFiles(), and setEmitAllBindFiles().
|
private |
Definition at line 459 of file Firtool.h.
Referenced by FirtoolOptions(), setEmitSeparateAlwaysBlocks(), and shouldEmitSeparateAlwaysBlocks().
|
private |
Definition at line 455 of file Firtool.h.
Referenced by FirtoolOptions(), setEnableAnnotationWarning(), and shouldEnableAnnotationWarning().
|
private |
Definition at line 438 of file Firtool.h.
Referenced by FirtoolOptions(), setEnableDebugInfo(), and shouldEnableDebugInfo().
|
private |
Definition at line 467 of file Firtool.h.
Referenced by FirtoolOptions(), setExportModuleHierarchy(), and shouldExportModuleHierarchy().
|
private |
Definition at line 470 of file Firtool.h.
Referenced by FirtoolOptions(), setFixupEICGWrapper(), and shouldFixupEICGWrapper().
|
private |
Definition at line 452 of file Firtool.h.
Referenced by FirtoolOptions(), setIgnoreReadEnableMem(), and shouldIgnoreReadEnableMemories().
|
private |
Definition at line 478 of file Firtool.h.
Referenced by FirtoolOptions(), setInlineInputOnlyModules(), and shouldInlineInputOnlyModules().
|
private |
Definition at line 475 of file Firtool.h.
Referenced by FirtoolOptions(), getLintStaticAsserts(), and setLintStaticAsserts().
|
private |
Definition at line 476 of file Firtool.h.
Referenced by FirtoolOptions(), getLintXmrsInDesign(), and setLintXmrsInDesign().
|
private |
Definition at line 433 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerAnnotationsNoRefTypePorts(), and shouldLowerNoRefTypePortAnnotations().
|
private |
Definition at line 448 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerMemories(), and shouldLowerMemories().
|
private |
Definition at line 456 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerToCore(), and shouldLowerToCore().
|
private |
Definition at line 443 of file Firtool.h.
Referenced by FirtoolOptions(), setNoDedup(), and shouldDedup().
|
private |
Definition at line 446 of file Firtool.h.
Referenced by FirtoolOptions(), getNoViews(), and setNoViews().
|
private |
Definition at line 454 of file Firtool.h.
Referenced by FirtoolOptions(), getOutputAnnotationFilename(), and setOutputAnnotationFilename().
|
private |
Definition at line 428 of file Firtool.h.
Referenced by FirtoolOptions(), getOutputFilename(), isDefaultOutputFilename(), and setOutputFilename().
|
private |
Definition at line 436 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveAggregate(), and setPreserveAggregate().
|
private |
Definition at line 437 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveMode(), and setPreserveValues().
|
private |
Definition at line 435 of file Firtool.h.
Referenced by FirtoolOptions(), setConvertProbesToSignals(), and shouldConvertProbesToSignals().
|
private |
Definition at line 450 of file Firtool.h.
Referenced by FirtoolOptions(), setReplSeqMem(), and shouldReplaceSequentialMemories().
|
private |
Definition at line 451 of file Firtool.h.
Referenced by FirtoolOptions(), getReplaceSequentialMemoriesFile(), and setReplSeqMemFile().
|
private |
Definition at line 472 of file Firtool.h.
Referenced by FirtoolOptions(), setSelectDefaultInstanceChoice(), and shouldSelectDefaultInstanceChoice().
|
private |
Definition at line 469 of file Firtool.h.
Referenced by FirtoolOptions(), setStripDebugInfo(), and shouldStripDebugInfo().
|
private |
Definition at line 468 of file Firtool.h.
Referenced by FirtoolOptions(), setStripFirDebugInfo(), and shouldStripFirDebugInfo().
|
private |
Definition at line 473 of file Firtool.h.
Referenced by FirtoolOptions(), getSymbolicValueLowering(), and setSymbolicValueLowering().
|
private |
Definition at line 442 of file Firtool.h.
Referenced by FirtoolOptions(), setVbToBV(), and shouldConvertVecOfBundle().
|
private |
Definition at line 458 of file Firtool.h.
Referenced by FirtoolOptions(), getVerificationFlavor(), and setVerificationFlavor().