|
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 850 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, skippedDomains, 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 188 of file Firtool.h.
References skippedDomains.
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 318 of file Firtool.h.
References addMuxPragmas.
|
inline |
Definition at line 334 of file Firtool.h.
References addVivadoRAMAddressConflictSynthesisBugWorkaround.
|
inline |
Definition at line 283 of file Firtool.h.
References blackBoxRootPath.
|
inline |
|
inline |
Definition at line 354 of file Firtool.h.
References ckgEnableName.
|
inline |
Definition at line 344 of file Firtool.h.
References ckgInputName.
|
inline |
Definition at line 339 of file Firtool.h.
References ckgModuleName.
|
inline |
Definition at line 349 of file Firtool.h.
References ckgOutputName.
|
inline |
Definition at line 359 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 263 of file Firtool.h.
References companionMode.
|
inline |
Definition at line 211 of file Firtool.h.
References probesToSignals.
|
inline |
Definition at line 258 of file Firtool.h.
References dedupClasses.
|
inline |
Definition at line 273 of file Firtool.h.
References disableAggressiveMergeConnections.
|
inline |
Definition at line 201 of file Firtool.h.
References disableAnnotationsClassless.
|
inline |
Definition at line 384 of file Firtool.h.
References disableCSEinClasses.
|
inline |
Definition at line 238 of file Firtool.h.
References disableLayerSink.
|
inline |
Definition at line 243 of file Firtool.h.
References disableOptimization.
|
inline |
Definition at line 196 of file Firtool.h.
References disableAnnotationsUnknown.
|
inline |
Definition at line 399 of file Firtool.h.
References disableWireElimination.
|
inline |
Definition at line 424 of file Firtool.h.
References domainMode.
|
inline |
Definition at line 414 of file Firtool.h.
References emitAllBindFiles.
|
inline |
Definition at line 328 of file Firtool.h.
References emitSeparateAlwaysBlocks.
|
inline |
Definition at line 308 of file Firtool.h.
References enableAnnotationWarning.
|
inline |
Definition at line 228 of file Firtool.h.
References enableDebugInfo.
|
inline |
Definition at line 364 of file Firtool.h.
References exportModuleHierarchy.
|
inline |
Definition at line 379 of file Firtool.h.
References fixupEICGWrapper.
|
inline |
Definition at line 298 of file Firtool.h.
References ignoreReadEnableMem.
|
inline |
Definition at line 419 of file Firtool.h.
References inlineInputOnlyModules.
|
inline |
Definition at line 404 of file Firtool.h.
References lintStaticAsserts.
|
inline |
Definition at line 409 of file Firtool.h.
References lintXmrsInDesign.
|
inline |
Definition at line 206 of file Firtool.h.
References lowerAnnotationsNoRefTypePorts.
|
inline |
Definition at line 278 of file Firtool.h.
References lowerMemories.
|
inline |
Definition at line 313 of file Firtool.h.
References lowerToCore.
|
inline |
|
inline |
|
inline |
Definition at line 303 of file Firtool.h.
References outputAnnotationFilename.
|
inline |
Definition at line 191 of file Firtool.h.
References outputFilename.
|
inline |
Definition at line 217 of file Firtool.h.
References preserveAggregate.
|
inline |
Definition at line 223 of file Firtool.h.
References preserveMode.
|
inline |
Definition at line 288 of file Firtool.h.
References replSeqMem.
|
inline |
Definition at line 293 of file Firtool.h.
References replSeqMemFile.
|
inline |
Definition at line 389 of file Firtool.h.
References selectDefaultInstanceChoice.
|
inline |
Definition at line 374 of file Firtool.h.
References stripDebugInfo.
|
inline |
Definition at line 369 of file Firtool.h.
References stripFirDebugInfo.
|
inline |
Definition at line 394 of file Firtool.h.
References symbolicValueLowering.
|
inline |
|
inline |
Definition at line 323 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 459 of file Firtool.h.
Referenced by FirtoolOptions(), setAddMuxPragmas(), and shouldAddMuxPragmas().
|
private |
Definition at line 462 of file Firtool.h.
Referenced by FirtoolOptions(), setAddVivadoRAMAddressConflictSynthesisBugWorkaround(), and shouldAddVivadoRAMAddressConflictSynthesisBugWorkaround().
|
private |
Definition at line 451 of file Firtool.h.
Referenced by FirtoolOptions(), getBlackBoxRootPath(), and setBlackBoxRootPath().
|
private |
Definition at line 441 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveMode(), and setBuildMode().
|
private |
Definition at line 466 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgEnableName(), and setClockGateOptions().
|
private |
Definition at line 464 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgInputName(), and setClockGateOptions().
|
private |
Definition at line 468 of file Firtool.h.
Referenced by getClockGateOptions(), and setClockGateOptions().
|
private |
Definition at line 463 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgModuleName(), and setClockGateOptions().
|
private |
Definition at line 465 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgOutputName(), and setClockGateOptions().
|
private |
Definition at line 467 of file Firtool.h.
Referenced by FirtoolOptions(), getClockGateOptions(), setCkgTestEnableName(), and setClockGateOptions().
|
private |
Definition at line 447 of file Firtool.h.
Referenced by FirtoolOptions(), getCompanionMode(), and setCompanionMode().
|
private |
Definition at line 446 of file Firtool.h.
Referenced by FirtoolOptions(), setDedupClasses(), and shouldDedupClasses().
|
private |
Definition at line 449 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableAggressiveMergeConnections(), and shouldDisableAggressiveMergeConnections().
|
private |
Definition at line 434 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableAnnotationsClassless(), and shouldDisableClasslessAnnotations().
|
private |
Definition at line 433 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableUnknownAnnotations(), and shouldDisableUnknownAnnotations().
|
private |
Definition at line 473 of file Firtool.h.
Referenced by setDisableCSEinClasses(), and shouldDisableCSEinClasses().
|
private |
Definition at line 442 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableLayerSink(), and shouldDisableLayerSink().
|
private |
Definition at line 443 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableOptimization(), and shouldDisableOptimization().
|
private |
Definition at line 455 of file Firtool.h.
Referenced by FirtoolOptions(), isRandomEnabled(), and mergeDisableRandom().
|
private |
Definition at line 476 of file Firtool.h.
Referenced by FirtoolOptions(), setDisableWireElimination(), and shouldDisableWireElimination().
|
private |
Definition at line 481 of file Firtool.h.
Referenced by FirtoolOptions(), getDomainMode(), and setDomainMode().
|
private |
Definition at line 479 of file Firtool.h.
Referenced by FirtoolOptions(), getEmitAllBindFiles(), and setEmitAllBindFiles().
|
private |
Definition at line 461 of file Firtool.h.
Referenced by FirtoolOptions(), setEmitSeparateAlwaysBlocks(), and shouldEmitSeparateAlwaysBlocks().
|
private |
Definition at line 457 of file Firtool.h.
Referenced by FirtoolOptions(), setEnableAnnotationWarning(), and shouldEnableAnnotationWarning().
|
private |
Definition at line 440 of file Firtool.h.
Referenced by FirtoolOptions(), setEnableDebugInfo(), and shouldEnableDebugInfo().
|
private |
Definition at line 469 of file Firtool.h.
Referenced by FirtoolOptions(), setExportModuleHierarchy(), and shouldExportModuleHierarchy().
|
private |
Definition at line 472 of file Firtool.h.
Referenced by FirtoolOptions(), setFixupEICGWrapper(), and shouldFixupEICGWrapper().
|
private |
Definition at line 454 of file Firtool.h.
Referenced by FirtoolOptions(), setIgnoreReadEnableMem(), and shouldIgnoreReadEnableMemories().
|
private |
Definition at line 480 of file Firtool.h.
Referenced by FirtoolOptions(), setInlineInputOnlyModules(), and shouldInlineInputOnlyModules().
|
private |
Definition at line 477 of file Firtool.h.
Referenced by FirtoolOptions(), getLintStaticAsserts(), and setLintStaticAsserts().
|
private |
Definition at line 478 of file Firtool.h.
Referenced by FirtoolOptions(), getLintXmrsInDesign(), and setLintXmrsInDesign().
|
private |
Definition at line 435 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerAnnotationsNoRefTypePorts(), and shouldLowerNoRefTypePortAnnotations().
|
private |
Definition at line 450 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerMemories(), and shouldLowerMemories().
|
private |
Definition at line 458 of file Firtool.h.
Referenced by FirtoolOptions(), setLowerToCore(), and shouldLowerToCore().
|
private |
Definition at line 445 of file Firtool.h.
Referenced by FirtoolOptions(), setNoDedup(), and shouldDedup().
|
private |
Definition at line 448 of file Firtool.h.
Referenced by FirtoolOptions(), getNoViews(), and setNoViews().
|
private |
Definition at line 456 of file Firtool.h.
Referenced by FirtoolOptions(), getOutputAnnotationFilename(), and setOutputAnnotationFilename().
|
private |
Definition at line 430 of file Firtool.h.
Referenced by FirtoolOptions(), getOutputFilename(), isDefaultOutputFilename(), and setOutputFilename().
|
private |
Definition at line 438 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveAggregate(), and setPreserveAggregate().
|
private |
Definition at line 439 of file Firtool.h.
Referenced by FirtoolOptions(), getPreserveMode(), and setPreserveValues().
|
private |
Definition at line 437 of file Firtool.h.
Referenced by FirtoolOptions(), setConvertProbesToSignals(), and shouldConvertProbesToSignals().
|
private |
Definition at line 452 of file Firtool.h.
Referenced by FirtoolOptions(), setReplSeqMem(), and shouldReplaceSequentialMemories().
|
private |
Definition at line 453 of file Firtool.h.
Referenced by FirtoolOptions(), getReplaceSequentialMemoriesFile(), and setReplSeqMemFile().
|
private |
Definition at line 474 of file Firtool.h.
Referenced by FirtoolOptions(), setSelectDefaultInstanceChoice(), and shouldSelectDefaultInstanceChoice().
|
private |
Definition at line 482 of file Firtool.h.
Referenced by FirtoolOptions(), and getSkippedDomains().
|
private |
Definition at line 471 of file Firtool.h.
Referenced by FirtoolOptions(), setStripDebugInfo(), and shouldStripDebugInfo().
|
private |
Definition at line 470 of file Firtool.h.
Referenced by FirtoolOptions(), setStripFirDebugInfo(), and shouldStripFirDebugInfo().
|
private |
Definition at line 475 of file Firtool.h.
Referenced by FirtoolOptions(), getSymbolicValueLowering(), and setSymbolicValueLowering().
|
private |
Definition at line 444 of file Firtool.h.
Referenced by FirtoolOptions(), setVbToBV(), and shouldConvertVecOfBundle().
|
private |
Definition at line 460 of file Firtool.h.
Referenced by FirtoolOptions(), getVerificationFlavor(), and setVerificationFlavor().