CIRCT 24.0.0git
Loading...
Searching...
No Matches
circt::firrtl::detail Namespace Reference

Classes

struct  AnnoTargetImpl
struct  FIRRTLBaseTypeStorage
struct  WidthTypeStorage
struct  BundleTypeStorage
struct  OpenBundleTypeStorage
struct  FVectorTypeStorage
struct  OpenVectorTypeStorage
struct  FEnumTypeStorage
struct  BaseTypeAliasStorage
struct  ClassTypeStorage

Functions

RefType getForceableResultType (bool forceable, Type type)
 Return null or forceable reference result type.
LogicalResult verifyForceableOp (Forceable op)
 Verify a Forceable op.
Forceable replaceWithNewForceability (Forceable op, bool forceable, ::mlir::PatternRewriter *rewriter=nullptr)
 Replace a Forceable op with equivalent, changing whether forceable.
ClassType getInstanceTypeForClassLike (ClassLike classOp)
LogicalResult verifyTypeAgainstClassLike (ClassLike classOp, ClassType type, function_ref< InFlightDiagnostic()> emitError)
 Assuming that the classOp is the source of truth, verify that the type accurately matches the signature of the class.

Function Documentation

◆ getForceableResultType()

RefType circt::firrtl::detail::getForceableResultType ( bool forceable,
Type type )

Return null or forceable reference result type.

Referenced by verifyForceableOp().

◆ getInstanceTypeForClassLike()

ClassType circt::firrtl::detail::getInstanceTypeForClassLike ( ClassLike classOp)

Definition at line 2037 of file FIRRTLOps.cpp.

◆ replaceWithNewForceability()

Forceable circt::firrtl::detail::replaceWithNewForceability ( Forceable op,
bool forceable,
::mlir::PatternRewriter * rewriter = nullptr )

Replace a Forceable op with equivalent, changing whether forceable.

No-op if already has specified forceability.

Referenced by demoteForceableIfUnused().

◆ verifyForceableOp()

LogicalResult circt::firrtl::detail::verifyForceableOp ( Forceable op)

Verify a Forceable op.

Definition at line 215 of file FIRRTLOpInterfaces.cpp.

References circt::firrtl::data, getForceableResultType(), success(), and circt::firrtl::type_dyn_cast().

◆ verifyTypeAgainstClassLike()

LogicalResult circt::firrtl::detail::verifyTypeAgainstClassLike ( ClassLike classOp,
ClassType type,
function_ref< InFlightDiagnostic()> emitError )

Assuming that the classOp is the source of truth, verify that the type accurately matches the signature of the class.

Definition at line 1990 of file FIRRTLOps.cpp.

References numElements, success(), and circt::firrtl::direction::toString().