|
CIRCT 22.0.0git
|
This class handles information about AST structures of each expressions. More...


Public Member Functions | |
| EmittedExpressionStateManager (const LoweringOptions &options) | |
| EmittedExpressionState | getExpressionState (Value value) |
| bool | dispatchHeuristic (Operation &op) |
| bool | shouldSpillWireBasedOnState (Operation &op) |
| Return true if it is beneficial to spill the operation under the specified spilling heuristic. | |
Private Member Functions | |
| EmittedExpressionState | visitUnhandledExpr (Operation *op) |
| EmittedExpressionState | visitInvalidComb (Operation *op) |
| EmittedExpressionState | visitUnhandledComb (Operation *op) |
| EmittedExpressionState | visitInvalidTypeOp (Operation *op) |
| EmittedExpressionState | visitUnhandledTypeOp (Operation *op) |
| EmittedExpressionState | visitUnhandledSV (Operation *op) |
| EmittedExpressionState | mergeOperandsStates (Operation *op) |
Private Attributes | |
| const LoweringOptions & | options |
| DenseMap< Value, EmittedExpressionState > | expressionStates |
This class handles information about AST structures of each expressions.
Definition at line 591 of file PrepareForEmission.cpp.
|
inline |
Definition at line 599 of file PrepareForEmission.cpp.
| bool EmittedExpressionStateManager::dispatchHeuristic | ( | Operation & | op | ) |
Definition at line 727 of file PrepareForEmission.cpp.
References getExpressionState(), circt::LoweringOptions::isWireSpillingHeuristicEnabled(), options, EmittedExpressionState::size, circt::LoweringOptions::SpillLargeTermsWithNamehints, and circt::LoweringOptions::wireSpillingNamehintTermLimit.
Referenced by shouldSpillWireBasedOnState().
| EmittedExpressionState EmittedExpressionStateManager::getExpressionState | ( | Value | value | ) |
Definition at line 652 of file PrepareForEmission.cpp.
References expressionStates, and EmittedExpressionState::getBaseState().
Referenced by dispatchHeuristic(), mergeOperandsStates(), and shouldSpillWireBasedOnState().
|
private |
Definition at line 668 of file PrepareForEmission.cpp.
References getExpressionState(), and EmittedExpressionState::mergeState().
Referenced by visitUnhandledExpr().
| bool EmittedExpressionStateManager::shouldSpillWireBasedOnState | ( | Operation & | op | ) |
Return true if it is beneficial to spill the operation under the specified spilling heuristic.
Definition at line 747 of file PrepareForEmission.cpp.
References dispatchHeuristic(), getExpressionState(), circt::LoweringOptions::maximumNumberOfTermsPerExpression, options, and EmittedExpressionState::size.
Referenced by prettifyAfterLegalization().
|
inlineprivate |
Definition at line 623 of file PrepareForEmission.cpp.
|
inlineprivate |
Definition at line 629 of file PrepareForEmission.cpp.
|
inlineprivate |
Definition at line 626 of file PrepareForEmission.cpp.
References visitUnhandledExpr().
|
inlineprivate |
Definition at line 617 of file PrepareForEmission.cpp.
References EmittedExpressionState::getBaseState(), and mergeOperandsStates().
Referenced by visitUnhandledComb(), visitUnhandledSV(), and visitUnhandledTypeOp().
|
inlineprivate |
Definition at line 635 of file PrepareForEmission.cpp.
References visitUnhandledExpr().
|
inlineprivate |
Definition at line 632 of file PrepareForEmission.cpp.
References visitUnhandledExpr().
|
friend |
Definition at line 609 of file PrepareForEmission.cpp.
|
friend |
Definition at line 609 of file PrepareForEmission.cpp.
|
friend |
Definition at line 609 of file PrepareForEmission.cpp.
|
private |
Definition at line 648 of file PrepareForEmission.cpp.
Referenced by getExpressionState().
|
private |
Definition at line 642 of file PrepareForEmission.cpp.
Referenced by dispatchHeuristic(), and shouldSpillWireBasedOnState().