CIRCT
19.0.0git
|
FIRRTLVisitor allows you to visit all of the expr/stmt/decls with one class declaration. More...
#include <FIRRTLVisitors.h>
Public Member Functions | |
ResultType | dispatchVisitor (Operation *op, ExtraArgs... args) |
This is the main entrypoint for the FIRRTLVisitor. More... | |
ResultType | visitIntrinsicOp (GenericIntrinsicOp *op, ExtraArgs... args) |
Special handling for generic intrinsic op which aren't quite expressions nor statements in the usual FIRRTL sense. More... | |
ResultType | visitInvalidExpr (Operation *op, ExtraArgs... args) |
ResultType | visitInvalidStmt (Operation *op, ExtraArgs... args) |
ResultType | visitInvalidDecl (Operation *op, ExtraArgs... args) |
ResultType | visitUnhandledExpr (Operation *op, ExtraArgs... args) |
ResultType | visitUnhandledStmt (Operation *op, ExtraArgs... args) |
ResultType | visitUnhandledDecl (Operation *op, ExtraArgs... args) |
ResultType | visitInvalidOp (Operation *op, ExtraArgs... args) |
visitInvalidOp is an override point for non-FIRRTL dialect operations. More... | |
ResultType | visitUnhandledOp (Operation *op, ExtraArgs... args) |
visitUnhandledOp is an override point for FIRRTL dialect ops that the concrete visitor didn't bother to implement. More... | |
Public Member Functions inherited from circt::firrtl::ExprVisitor< ConcreteType, void, ExtraArgs... > | |
void | dispatchExprVisitor (Operation *op, ExtraArgs... args) |
void | visitInvalidExpr (Operation *op, ExtraArgs... args) |
This callback is invoked on any non-expression operations. More... | |
void | visitUnhandledExpr (Operation *op, ExtraArgs... args) |
This callback is invoked on any expression operations that are not handled by the concrete visitor. More... | |
void | visitUnaryExpr (Operation *op, ExtraArgs... args) |
This fallback is invoked on any unary expr that isn't explicitly handled. More... | |
void | visitBinaryExpr (Operation *op, ExtraArgs... args) |
This fallback is invoked on any binary expr that isn't explicitly handled. More... | |
HANDLE (ConstantOp, Unhandled) | |
HANDLE (SpecialConstantOp, Unhandled) | |
HANDLE (AggregateConstantOp, Unhandled) | |
HANDLE (BundleCreateOp, Unhandled) | |
HANDLE (VectorCreateOp, Unhandled) | |
HANDLE (FEnumCreateOp, Unhandled) | |
HANDLE (SubfieldOp, Unhandled) | |
HANDLE (SubindexOp, Unhandled) | |
HANDLE (SubaccessOp, Unhandled) | |
HANDLE (IsTagOp, Unhandled) | |
HANDLE (SubtagOp, Unhandled) | |
HANDLE (TagExtractOp, Unhandled) | |
HANDLE (MultibitMuxOp, Unhandled) | |
HANDLE (OpenSubfieldOp, Unhandled) | |
HANDLE (OpenSubindexOp, Unhandled) | |
HANDLE (ObjectSubfieldOp, Unhandled) | |
HANDLE (AddPrimOp, Binary) | |
HANDLE (SubPrimOp, Binary) | |
HANDLE (MulPrimOp, Binary) | |
HANDLE (DivPrimOp, Binary) | |
HANDLE (RemPrimOp, Binary) | |
HANDLE (AndPrimOp, Binary) | |
HANDLE (OrPrimOp, Binary) | |
HANDLE (XorPrimOp, Binary) | |
HANDLE (LEQPrimOp, Binary) | |
HANDLE (LTPrimOp, Binary) | |
HANDLE (GEQPrimOp, Binary) | |
HANDLE (GTPrimOp, Binary) | |
HANDLE (EQPrimOp, Binary) | |
HANDLE (NEQPrimOp, Binary) | |
HANDLE (CatPrimOp, Binary) | |
HANDLE (DShlPrimOp, Binary) | |
HANDLE (DShlwPrimOp, Binary) | |
HANDLE (DShrPrimOp, Binary) | |
HANDLE (AsSIntPrimOp, Unary) | |
HANDLE (AsUIntPrimOp, Unary) | |
HANDLE (AsAsyncResetPrimOp, Unary) | |
HANDLE (AsClockPrimOp, Unary) | |
HANDLE (CvtPrimOp, Unary) | |
HANDLE (NegPrimOp, Unary) | |
HANDLE (NotPrimOp, Unary) | |
HANDLE (AndRPrimOp, Unary) | |
HANDLE (OrRPrimOp, Unary) | |
HANDLE (XorRPrimOp, Unary) | |
HANDLE (ElementwiseOrPrimOp, Unhandled) | |
HANDLE (ElementwiseAndPrimOp, Unhandled) | |
HANDLE (ElementwiseXorPrimOp, Unhandled) | |
HANDLE (IsXIntrinsicOp, Unhandled) | |
HANDLE (PlusArgsValueIntrinsicOp, Unhandled) | |
HANDLE (PlusArgsTestIntrinsicOp, Unhandled) | |
HANDLE (SizeOfIntrinsicOp, Unhandled) | |
HANDLE (ClockGateIntrinsicOp, Unhandled) | |
HANDLE (ClockInverterIntrinsicOp, Unhandled) | |
HANDLE (ClockDividerIntrinsicOp, Unhandled) | |
HANDLE (LTLAndIntrinsicOp, Unhandled) | |
HANDLE (LTLOrIntrinsicOp, Unhandled) | |
HANDLE (LTLDelayIntrinsicOp, Unhandled) | |
HANDLE (LTLConcatIntrinsicOp, Unhandled) | |
HANDLE (LTLNotIntrinsicOp, Unhandled) | |
HANDLE (LTLImplicationIntrinsicOp, Unhandled) | |
HANDLE (LTLEventuallyIntrinsicOp, Unhandled) | |
HANDLE (LTLClockIntrinsicOp, Unhandled) | |
HANDLE (LTLDisableIntrinsicOp, Unhandled) | |
HANDLE (Mux4CellIntrinsicOp, Unhandled) | |
HANDLE (Mux2CellIntrinsicOp, Unhandled) | |
HANDLE (HasBeenResetIntrinsicOp, Unhandled) | |
HANDLE (BitsPrimOp, Unhandled) | |
HANDLE (HeadPrimOp, Unhandled) | |
HANDLE (InvalidValueOp, Unhandled) | |
HANDLE (MuxPrimOp, Unhandled) | |
HANDLE (PadPrimOp, Unhandled) | |
HANDLE (ShlPrimOp, Unhandled) | |
HANDLE (ShrPrimOp, Unhandled) | |
HANDLE (TailPrimOp, Unhandled) | |
HANDLE (VerbatimExprOp, Unhandled) | |
HANDLE (RefSendOp, Unhandled) | |
HANDLE (RefResolveOp, Unhandled) | |
HANDLE (RefSubOp, Unhandled) | |
HANDLE (RWProbeOp, Unhandled) | |
HANDLE (XMRRefOp, Unhandled) | |
HANDLE (XMRDerefOp, Unhandled) | |
HANDLE (HWStructCastOp, Unhandled) | |
HANDLE (UninferredResetCastOp, Unhandled) | |
HANDLE (ConstCastOp, Unhandled) | |
HANDLE (BitCastOp, Unhandled) | |
HANDLE (RefCastOp, Unhandled) | |
HANDLE (StringConstantOp, Unhandled) | |
HANDLE (FIntegerConstantOp, Unhandled) | |
HANDLE (BoolConstantOp, Unhandled) | |
HANDLE (DoubleConstantOp, Unhandled) | |
HANDLE (ListCreateOp, Unhandled) | |
HANDLE (PathOp, Unhandled) | |
HANDLE (UnresolvedPathOp, Unhandled) | |
Public Member Functions inherited from circt::firrtl::StmtVisitor< ConcreteType, void, ExtraArgs... > | |
void | dispatchStmtVisitor (Operation *op, ExtraArgs... args) |
void | visitInvalidStmt (Operation *op, ExtraArgs... args) |
This callback is invoked on any non-Stmt operations. More... | |
void | visitUnhandledStmt (Operation *op, ExtraArgs... args) |
This callback is invoked on any Stmt operations that are not handled by the concrete visitor. More... | |
HANDLE (AttachOp) | |
HANDLE (ConnectOp) | |
HANDLE (StrictConnectOp) | |
HANDLE (RefDefineOp) | |
HANDLE (ForceOp) | |
HANDLE (PrintFOp) | |
HANDLE (SkipOp) | |
HANDLE (StopOp) | |
HANDLE (WhenOp) | |
HANDLE (AssertOp) | |
HANDLE (AssumeOp) | |
HANDLE (CoverOp) | |
HANDLE (PropAssignOp) | |
HANDLE (RefForceOp) | |
HANDLE (RefForceInitialOp) | |
HANDLE (RefReleaseOp) | |
HANDLE (RefReleaseInitialOp) | |
HANDLE (FPGAProbeIntrinsicOp) | |
HANDLE (VerifAssertIntrinsicOp) | |
HANDLE (VerifAssumeIntrinsicOp) | |
HANDLE (VerifCoverIntrinsicOp) | |
HANDLE (UnclockedAssumeIntrinsicOp) | |
HANDLE (LayerBlockOp) | |
Public Member Functions inherited from circt::firrtl::DeclVisitor< ConcreteType, void, ExtraArgs... > | |
void | dispatchDeclVisitor (Operation *op, ExtraArgs... args) |
void | visitInvalidDecl (Operation *op, ExtraArgs... args) |
This callback is invoked on any non-Decl operations. More... | |
void | visitUnhandledDecl (Operation *op, ExtraArgs... args) |
This callback is invoked on any Decl operations that are not handled by the concrete visitor. More... | |
HANDLE (InstanceOp) | |
HANDLE (ObjectOp) | |
HANDLE (MemOp) | |
HANDLE (NodeOp) | |
HANDLE (RegOp) | |
HANDLE (RegResetOp) | |
HANDLE (WireOp) | |
HANDLE (VerbatimWireOp) | |
FIRRTLVisitor allows you to visit all of the expr/stmt/decls with one class declaration.
Clients call dispatchVisitor to invoke the dispatch, and may implement visitInvalidOp() to get notified about non-FIRRTL dialect nodes and visitUnhandledOp() to get notified about FIRRTL dialect ops that are not handled specifically.
Definition at line 339 of file FIRRTLVisitors.h.
|
inline |
This is the main entrypoint for the FIRRTLVisitor.
Definition at line 345 of file FIRRTLVisitors.h.
References circt::firrtl::ExprVisitor< ConcreteType, void, ExtraArgs... >::dispatchExprVisitor().
|
inline |
Special handling for generic intrinsic op which aren't quite expressions nor statements in the usual FIRRTL sense.
Refactor into specific visitor instead of adding more here.
Definition at line 352 of file FIRRTLVisitors.h.
References circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledOp().
|
inline |
Definition at line 363 of file FIRRTLVisitors.h.
References circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitInvalidOp().
|
inline |
Definition at line 357 of file FIRRTLVisitors.h.
References circt::firrtl::StmtVisitor< ConcreteType, void, ExtraArgs... >::dispatchStmtVisitor().
|
inline |
visitInvalidOp is an override point for non-FIRRTL dialect operations.
Definition at line 379 of file FIRRTLVisitors.h.
Referenced by circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitInvalidDecl().
|
inline |
Definition at line 360 of file FIRRTLVisitors.h.
References circt::firrtl::DeclVisitor< ConcreteType, void, ExtraArgs... >::dispatchDeclVisitor().
|
inline |
Definition at line 374 of file FIRRTLVisitors.h.
References circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledOp().
|
inline |
Definition at line 368 of file FIRRTLVisitors.h.
References circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledOp().
|
inline |
visitUnhandledOp is an override point for FIRRTL dialect ops that the concrete visitor didn't bother to implement.
Definition at line 385 of file FIRRTLVisitors.h.
Referenced by circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitIntrinsicOp(), circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledDecl(), circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledExpr(), and circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledStmt().
|
inline |
Definition at line 371 of file FIRRTLVisitors.h.
References circt::firrtl::FIRRTLVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledOp().