CIRCT  19.0.0git
Functions
Firtool.cpp File Reference
#include "circt-c/Firtool/Firtool.h"
#include "circt/Firtool/Firtool.h"
#include "mlir/CAPI/IR.h"
#include "mlir/CAPI/Pass.h"
#include "mlir/CAPI/Support.h"
#include "mlir/CAPI/Utils.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for Firtool.cpp:

Go to the source code of this file.

Functions

 DEFINE_C_API_PTR_METHODS (CirctFirtoolFirtoolOptions, circt::firtool::FirtoolOptions) CirctFirtoolFirtoolOptions circtFirtoolOptionsCreateDefault()
 
void circtFirtoolOptionsDestroy (CirctFirtoolFirtoolOptions options)
 
void circtFirtoolOptionsSetOutputFilename (CirctFirtoolFirtoolOptions options, MlirStringRef filename)
 
void circtFirtoolOptionsSetDisableUnknownAnnotations (CirctFirtoolFirtoolOptions options, bool disable)
 
void circtFirtoolOptionsSetDisableAnnotationsClassless (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetLowerAnnotationsNoRefTypePorts (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetAllowAddingPortsOnPublic (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetPreserveAggregate (CirctFirtoolFirtoolOptions options, CirctFirtoolPreserveAggregateMode value)
 
void circtFirtoolOptionsSetPreserveValues (CirctFirtoolFirtoolOptions options, CirctFirtoolPreserveValuesMode value)
 
void circtFirtoolOptionsSetEnableDebugInfo (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetBuildMode (CirctFirtoolFirtoolOptions options, CirctFirtoolBuildMode value)
 
void circtFirtoolOptionsSetDisableOptimization (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetExportChiselInterface (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetChiselInterfaceOutDirectory (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetVbToBv (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetNoDedup (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetCompanionMode (CirctFirtoolFirtoolOptions options, CirctFirtoolCompanionMode value)
 
void circtFirtoolOptionsSetDisableAggressiveMergeConnections (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetDisableHoistingHWPassthrough (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetEmitOmir (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetOmirOutFile (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetLowerMemories (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetBlackBoxRootPath (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetReplSeqMem (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetReplSeqMemFile (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetExtractTestCode (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetIgnoreReadEnableMem (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetDisableRandom (CirctFirtoolFirtoolOptions options, CirctFirtoolRandomKind value)
 
void circtFirtoolOptionsSetOutputAnnotationFilename (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetEnableAnnotationWarning (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetAddMuxPragmas (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetVerificationFlavor (CirctFirtoolFirtoolOptions options, firrtl::VerificationFlavor value)
 
void circtFirtoolOptionsSetEmitSeparateAlwaysBlocks (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetEtcDisableInstanceExtraction (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetEtcDisableRegisterExtraction (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetEtcDisableModuleInlining (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetAddVivadoRAMAddressConflictSynthesisBugWorkaround (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetCkgModuleName (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetCkgInputName (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetCkgOutputName (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetCkgEnableName (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetCkgTestEnableName (CirctFirtoolFirtoolOptions options, MlirStringRef value)
 
void circtFirtoolOptionsSetExportModuleHierarchy (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetStripFirDebugInfo (CirctFirtoolFirtoolOptions options, bool value)
 
void circtFirtoolOptionsSetStripDebugInfo (CirctFirtoolFirtoolOptions options, bool value)
 
MlirLogicalResult circtFirtoolPopulatePreprocessTransforms (MlirPassManager pm, CirctFirtoolFirtoolOptions options)
 
MlirLogicalResult circtFirtoolPopulateCHIRRTLToLowFIRRTL (MlirPassManager pm, CirctFirtoolFirtoolOptions options, MlirStringRef inputFilename)
 
MlirLogicalResult circtFirtoolPopulateLowFIRRTLToHW (MlirPassManager pm, CirctFirtoolFirtoolOptions options)
 
MlirLogicalResult circtFirtoolPopulateHWToSV (MlirPassManager pm, CirctFirtoolFirtoolOptions options)
 
MlirLogicalResult circtFirtoolPopulateExportVerilog (MlirPassManager pm, CirctFirtoolFirtoolOptions options, MlirStringCallback callback, void *userData)
 
MlirLogicalResult circtFirtoolPopulateExportSplitVerilog (MlirPassManager pm, CirctFirtoolFirtoolOptions options, MlirStringRef directory)
 
MlirLogicalResult circtFirtoolPopulateFinalizeIR (MlirPassManager pm, CirctFirtoolFirtoolOptions options)
 
MlirLogicalResult circtFirtoolpopulateHWToBTOR2 (MlirPassManager pm, CirctFirtoolFirtoolOptions options, MlirStringCallback callback, void *userData)
 

Function Documentation

◆ circtFirtoolOptionsDestroy()

void circtFirtoolOptionsDestroy ( CirctFirtoolFirtoolOptions  options)

Definition at line 30 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetAddMuxPragmas()

void circtFirtoolOptionsSetAddMuxPragmas ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 254 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetAddVivadoRAMAddressConflictSynthesisBugWorkaround()

void circtFirtoolOptionsSetAddVivadoRAMAddressConflictSynthesisBugWorkaround ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 284 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetAllowAddingPortsOnPublic()

void circtFirtoolOptionsSetAllowAddingPortsOnPublic ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 54 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetBlackBoxRootPath()

void circtFirtoolOptionsSetBlackBoxRootPath ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 197 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetBuildMode()

void circtFirtoolOptionsSetBuildMode ( CirctFirtoolFirtoolOptions  options,
CirctFirtoolBuildMode  value 
)

◆ circtFirtoolOptionsSetChiselInterfaceOutDirectory()

void circtFirtoolOptionsSetChiselInterfaceOutDirectory ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 138 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCkgEnableName()

void circtFirtoolOptionsSetCkgEnableName ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 304 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCkgInputName()

void circtFirtoolOptionsSetCkgInputName ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 294 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCkgModuleName()

void circtFirtoolOptionsSetCkgModuleName ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 289 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCkgOutputName()

void circtFirtoolOptionsSetCkgOutputName ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 299 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCkgTestEnableName()

void circtFirtoolOptionsSetCkgTestEnableName ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 309 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetCompanionMode()

void circtFirtoolOptionsSetCompanionMode ( CirctFirtoolFirtoolOptions  options,
CirctFirtoolCompanionMode  value 
)

◆ circtFirtoolOptionsSetDisableAggressiveMergeConnections()

void circtFirtoolOptionsSetDisableAggressiveMergeConnections ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 172 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetDisableAnnotationsClassless()

void circtFirtoolOptionsSetDisableAnnotationsClassless ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 44 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetDisableHoistingHWPassthrough()

void circtFirtoolOptionsSetDisableHoistingHWPassthrough ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 177 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetDisableOptimization()

void circtFirtoolOptionsSetDisableOptimization ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 128 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetDisableRandom()

void circtFirtoolOptionsSetDisableRandom ( CirctFirtoolFirtoolOptions  options,
CirctFirtoolRandomKind  value 
)

◆ circtFirtoolOptionsSetDisableUnknownAnnotations()

void circtFirtoolOptionsSetDisableUnknownAnnotations ( CirctFirtoolFirtoolOptions  options,
bool  disable 
)

Definition at line 39 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEmitOmir()

void circtFirtoolOptionsSetEmitOmir ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 182 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEmitSeparateAlwaysBlocks()

void circtFirtoolOptionsSetEmitSeparateAlwaysBlocks ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 264 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEnableAnnotationWarning()

void circtFirtoolOptionsSetEnableAnnotationWarning ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 249 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEnableDebugInfo()

void circtFirtoolOptionsSetEnableDebugInfo ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 104 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEtcDisableInstanceExtraction()

void circtFirtoolOptionsSetEtcDisableInstanceExtraction ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 269 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEtcDisableModuleInlining()

void circtFirtoolOptionsSetEtcDisableModuleInlining ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 279 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetEtcDisableRegisterExtraction()

void circtFirtoolOptionsSetEtcDisableRegisterExtraction ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 274 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetExportChiselInterface()

void circtFirtoolOptionsSetExportChiselInterface ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 133 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetExportModuleHierarchy()

void circtFirtoolOptionsSetExportModuleHierarchy ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 314 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetExtractTestCode()

void circtFirtoolOptionsSetExtractTestCode ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 212 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetIgnoreReadEnableMem()

void circtFirtoolOptionsSetIgnoreReadEnableMem ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 217 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetLowerAnnotationsNoRefTypePorts()

void circtFirtoolOptionsSetLowerAnnotationsNoRefTypePorts ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 49 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetLowerMemories()

void circtFirtoolOptionsSetLowerMemories ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 192 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetNoDedup()

void circtFirtoolOptionsSetNoDedup ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 148 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetOmirOutFile()

void circtFirtoolOptionsSetOmirOutFile ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 187 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetOutputAnnotationFilename()

void circtFirtoolOptionsSetOutputAnnotationFilename ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 244 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetOutputFilename()

void circtFirtoolOptionsSetOutputFilename ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  filename 
)

Definition at line 34 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetPreserveAggregate()

void circtFirtoolOptionsSetPreserveAggregate ( CirctFirtoolFirtoolOptions  options,
CirctFirtoolPreserveAggregateMode  value 
)

◆ circtFirtoolOptionsSetPreserveValues()

void circtFirtoolOptionsSetPreserveValues ( CirctFirtoolFirtoolOptions  options,
CirctFirtoolPreserveValuesMode  value 
)

◆ circtFirtoolOptionsSetReplSeqMem()

void circtFirtoolOptionsSetReplSeqMem ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 202 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetReplSeqMemFile()

void circtFirtoolOptionsSetReplSeqMemFile ( CirctFirtoolFirtoolOptions  options,
MlirStringRef  value 
)

Definition at line 207 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetStripDebugInfo()

void circtFirtoolOptionsSetStripDebugInfo ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 324 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetStripFirDebugInfo()

void circtFirtoolOptionsSetStripFirDebugInfo ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 319 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetVbToBv()

void circtFirtoolOptionsSetVbToBv ( CirctFirtoolFirtoolOptions  options,
bool  value 
)

Definition at line 143 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolOptionsSetVerificationFlavor()

void circtFirtoolOptionsSetVerificationFlavor ( CirctFirtoolFirtoolOptions  options,
firrtl::VerificationFlavor  value 
)

Definition at line 259 of file Firtool.cpp.

References unwrap().

◆ circtFirtoolPopulateCHIRRTLToLowFIRRTL()

MlirLogicalResult circtFirtoolPopulateCHIRRTLToLowFIRRTL ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options,
MlirStringRef  inputFilename 
)

Definition at line 341 of file Firtool.cpp.

References circt::firtool::populateCHIRRTLToLowFIRRTL(), unwrap(), and wrap().

◆ circtFirtoolPopulateExportSplitVerilog()

MlirLogicalResult circtFirtoolPopulateExportSplitVerilog ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options,
MlirStringRef  directory 
)

Definition at line 371 of file Firtool.cpp.

References circt::firtool::populateExportSplitVerilog(), unwrap(), and wrap().

◆ circtFirtoolPopulateExportVerilog()

MlirLogicalResult circtFirtoolPopulateExportVerilog ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options,
MlirStringCallback  callback,
void *  userData 
)

Definition at line 361 of file Firtool.cpp.

References circt::firtool::populateExportVerilog(), unwrap(), and wrap().

◆ circtFirtoolPopulateFinalizeIR()

MlirLogicalResult circtFirtoolPopulateFinalizeIR ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options 
)

Definition at line 379 of file Firtool.cpp.

References circt::firtool::populateFinalizeIR(), unwrap(), and wrap().

◆ circtFirtoolpopulateHWToBTOR2()

MlirLogicalResult circtFirtoolpopulateHWToBTOR2 ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options,
MlirStringCallback  callback,
void *  userData 
)

Definition at line 385 of file Firtool.cpp.

References circt::firtool::populateHWToBTOR2(), unwrap(), and wrap().

◆ circtFirtoolPopulateHWToSV()

MlirLogicalResult circtFirtoolPopulateHWToSV ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options 
)

Definition at line 355 of file Firtool.cpp.

References circt::firtool::populateHWToSV(), unwrap(), and wrap().

◆ circtFirtoolPopulateLowFIRRTLToHW()

MlirLogicalResult circtFirtoolPopulateLowFIRRTLToHW ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options 
)

Definition at line 349 of file Firtool.cpp.

References circt::firtool::populateLowFIRRTLToHW(), unwrap(), and wrap().

◆ circtFirtoolPopulatePreprocessTransforms()

MlirLogicalResult circtFirtoolPopulatePreprocessTransforms ( MlirPassManager  pm,
CirctFirtoolFirtoolOptions  options 
)

Definition at line 334 of file Firtool.cpp.

References circt::firtool::populatePreprocessTransforms(), unwrap(), and wrap().

◆ DEFINE_C_API_PTR_METHODS()

DEFINE_C_API_PTR_METHODS ( CirctFirtoolFirtoolOptions  ,
circt::firtool::FirtoolOptions   
)

Definition at line 18 of file Firtool.cpp.

References wrap().