CIRCT
20.0.0git
|
In BuildForGroups, a register is created for the iteration argument of the for op. More...
Private Member Functions | |
LogicalResult | partiallyLowerFuncToComp (FuncOp funcOp, PatternRewriter &rewriter) const override |
Additional Inherited Members | |
Public Member Functions inherited from circt::calyx::FuncOpPartialLoweringPattern | |
FuncOpPartialLoweringPattern (MLIRContext *context, LogicalResult &resRef, PatternApplicationState &patternState, DenseMap< mlir::func::FuncOp, calyx::ComponentOp > &map, calyx::CalyxLoweringState &state) | |
LogicalResult | partiallyLower (mlir::func::FuncOp funcOp, PatternRewriter &rewriter) const override final |
Entry point to initialize the state of this class and conduct the partial lowering. More... | |
calyx::ComponentOp | getComponent () const |
Returns the component operation associated with the currently executing partial lowering. More... | |
template<typename T = ComponentLoweringStateInterface> | |
T & | getState () const |
CalyxLoweringState & | loweringState () const |
Return the calyx lowering state for this pattern. More... | |
virtual LogicalResult | partiallyLowerFuncToComp (mlir::func::FuncOp funcOp, PatternRewriter &rewriter) const =0 |
Public Member Functions inherited from circt::calyx::PartialLoweringPattern< mlir::func::FuncOp > | |
PartialLoweringPattern (MLIRContext *ctx, LogicalResult &resRef, PatternApplicationState &patternState) | |
LogicalResult | matchAndRewrite (mlir::func::FuncOp op, PatternRewriter &rewriter) const override |
Protected Attributes inherited from circt::calyx::FuncOpPartialLoweringPattern | |
DenseMap< mlir::func::FuncOp, calyx::ComponentOp > & | functionMapping |
In BuildForGroups, a register is created for the iteration argument of the for op.
This register is then initialized to the lowerBound of the for loop in a group that executes the for loop.
Definition at line 1376 of file SCFToCalyx.cpp.
|
inlineoverrideprivate |
Definition at line 1380 of file SCFToCalyx.cpp.
References circt::calyx::buildAssignmentsForRegisterWrite(), circt::calyx::createRegister(), circt::calyx::RepeatOpInterface< T >::getLoc(), circt::calyx::RepeatOpInterface< T >::getOperation(), and seq::reg().