CIRCT  18.0.0git
Functions | Variables
FIRRTL.cpp File Reference
#include "circt-c/Dialect/FIRRTL.h"
#include "circt/Dialect/FIRRTL/FIRRTLAttributes.h"
#include "circt/Dialect/FIRRTL/FIRRTLDialect.h"
#include "circt/Dialect/FIRRTL/FIRRTLTypes.h"
#include "mlir/CAPI/IR.h"
#include "mlir/CAPI/Registration.h"
#include "mlir/CAPI/Support.h"
Include dependency graph for FIRRTL.cpp:

Go to the source code of this file.

Functions

 MLIR_DEFINE_CAPI_DIALECT_REGISTRATION (FIRRTL, firrtl, circt::firrtl::FIRRTLDialect) MlirType firrtlTypeGetUInt(MlirContext ctx
 
MlirType firrtlTypeGetSInt (MlirContext ctx, int32_t width)
 
MlirType firrtlTypeGetClock (MlirContext ctx)
 
MlirType firrtlTypeGetReset (MlirContext ctx)
 
MlirType firrtlTypeGetAsyncReset (MlirContext ctx)
 
MlirType firrtlTypeGetAnalog (MlirContext ctx, int32_t width)
 
MlirType firrtlTypeGetVector (MlirContext ctx, MlirType element, size_t count)
 
MlirType firrtlTypeGetBundle (MlirContext ctx, size_t count, const FIRRTLBundleField *fields)
 
MlirAttribute firrtlAttrGetConvention (MlirContext ctx, FIRRTLConvention convention)
 
MlirAttribute firrtlAttrGetPortDirs (MlirContext ctx, size_t count, const FIRRTLPortDir *dirs)
 
MlirAttribute firrtlAttrGetParamDecl (MlirContext ctx, MlirIdentifier name, MlirType type, MlirAttribute value)
 
MlirAttribute firrtlAttrGetNameKind (MlirContext ctx, FIRRTLNameKind nameKind)
 
MlirAttribute firrtlAttrGetRUW (MlirContext ctx, FIRRTLRUW ruw)
 
MlirAttribute firrtlAttrGetMemInit (MlirContext ctx, MlirIdentifier filename, bool isBinary, bool isInline)
 
MlirAttribute firrtlAttrGetMemDir (MlirContext ctx, FIRRTLMemDir dir)
 
MlirAttribute firrtlAttrGetEventControl (MlirContext ctx, FIRRTLEventControl eventControl)
 

Variables

int32_t width
 

Function Documentation

◆ firrtlAttrGetConvention()

MlirAttribute firrtlAttrGetConvention ( MlirContext  ctx,
FIRRTLConvention  convention 
)

◆ firrtlAttrGetEventControl()

MlirAttribute firrtlAttrGetEventControl ( MlirContext  ctx,
FIRRTLEventControl  eventControl 
)

◆ firrtlAttrGetMemDir()

MlirAttribute firrtlAttrGetMemDir ( MlirContext  ctx,
FIRRTLMemDir  dir 
)

◆ firrtlAttrGetMemInit()

MlirAttribute firrtlAttrGetMemInit ( MlirContext  ctx,
MlirIdentifier  filename,
bool  isBinary,
bool  isInline 
)

Definition at line 146 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ firrtlAttrGetNameKind()

MlirAttribute firrtlAttrGetNameKind ( MlirContext  ctx,
FIRRTLNameKind  nameKind 
)

◆ firrtlAttrGetParamDecl()

MlirAttribute firrtlAttrGetParamDecl ( MlirContext  ctx,
MlirIdentifier  name,
MlirType  type,
MlirAttribute  value 
)

Definition at line 107 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), value, and wrap().

◆ firrtlAttrGetPortDirs()

MlirAttribute firrtlAttrGetPortDirs ( MlirContext  ctx,
size_t  count,
const FIRRTLPortDir dirs 
)

◆ firrtlAttrGetRUW()

MlirAttribute firrtlAttrGetRUW ( MlirContext  ctx,
FIRRTLRUW  ruw 
)

◆ firrtlTypeGetAnalog()

MlirType firrtlTypeGetAnalog ( MlirContext  ctx,
int32_t  width 
)

Definition at line 47 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), width, and wrap().

◆ firrtlTypeGetAsyncReset()

MlirType firrtlTypeGetAsyncReset ( MlirContext  ctx)

Definition at line 43 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ firrtlTypeGetBundle()

MlirType firrtlTypeGetBundle ( MlirContext  ctx,
size_t  count,
const FIRRTLBundleField fields 
)

Definition at line 58 of file FIRRTL.cpp.

References assert(), circt::calyx::direction::get(), unwrap(), and wrap().

◆ firrtlTypeGetClock()

MlirType firrtlTypeGetClock ( MlirContext  ctx)

Definition at line 35 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ firrtlTypeGetReset()

MlirType firrtlTypeGetReset ( MlirContext  ctx)

Definition at line 39 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ firrtlTypeGetSInt()

MlirType firrtlTypeGetSInt ( MlirContext  ctx,
int32_t  width 
)

Definition at line 31 of file FIRRTL.cpp.

References circt::calyx::direction::get(), unwrap(), width, and wrap().

◆ firrtlTypeGetVector()

MlirType firrtlTypeGetVector ( MlirContext  ctx,
MlirType  element,
size_t  count 
)

Definition at line 51 of file FIRRTL.cpp.

References assert(), circt::calyx::direction::get(), unwrap(), and wrap().

◆ MLIR_DEFINE_CAPI_DIALECT_REGISTRATION()

MLIR_DEFINE_CAPI_DIALECT_REGISTRATION ( FIRRTL  ,
firrtl  ,
circt::firrtl::FIRRTLDialect   
)

Variable Documentation

◆ width

int32_t width
Initial value:
{
return wrap(UIntType::get(unwrap(ctx), width))
return wrap(CMemoryType::get(unwrap(ctx), baseType, numElements))
int32_t width
Definition: FIRRTL.cpp:27
static EvaluatorValuePtr unwrap(OMEvaluatorValue c)
Definition: OM.cpp:100
Direction get(bool isOutput)
Returns an output direction if isOutput is true, otherwise returns an input direction.
Definition: CalyxOps.cpp:53

Definition at line 27 of file FIRRTL.cpp.

Referenced by circt::pipelinetocalyx::BuildOpGroups::buildLibraryBinaryPipeOp(), circt::scftocalyx::BuildOpGroups::buildLibraryBinaryPipeOp(), circt::pipelinetocalyx::BuildOpGroups::buildOp(), circt::scftocalyx::BuildOpGroups::buildOp(), canonicalizePrimOp(), computeKnownBits(), circt::calyx::createConstant(), circt::calyx::createRegister(), customTypePrinter(), driveSignal(), emitDim(), emitDims(), circt::extOrTruncZeroWidth(), circt::Solver::Circuit::fetchOrAllocateExpr(), llvm::yaml::MappingContextTraits< DescribedSignal, Context >::Field::Field(), firrtlTypeGetAnalog(), firrtlTypeGetSInt(), circt::systemc::IntType::get(), circt::systemc::BigIntType::get(), circt::systemc::BigUIntType::get(), circt::systemc::BitVectorType::get(), circt::systemc::LogicVectorType::get(), circt::firrtl::getBitWidth(), llvm::DOTGraphTraits< circt::hw::HWModuleOp >::getEdgeAttributes(), getElementTypeOfWidth(), circt::firrtl::getIntOnesAttr(), circt::firrtl::getIntZerosAttr(), getSummary(), getTotalWidth(), circt::firrtl::WidthQualifiedTypeTrait< ConcreteType >::getWidth(), circt::FirRegLowering::initialize(), circt::llhd::sim::Slot::insertChange(), circt::llhd::sim::UpdateQueue::insertOrUpdate(), lowerBoundaryScalar(), circt::FirMemLowering::lowerMemoriesInModule(), circt::firrtl::lowerType(), circt::systemc::detail::IntegerWidthStorage::operator==(), parseIntegerOrBitVector(), circt::pipelinetocalyx::BuildPipelineRegs::partiallyLowerFuncToComp(), circt::calyx::BuildReturnRegs::partiallyLowerFuncToComp(), circt::Solver::Circuit::performExtract(), circt::Solver::Circuit::performParity(), printParameterList(), FIRRTLConstantifier::rewrite(), SFCCompatPass::runOnOperation(), and circt::sextZeroWidth().