CIRCT 20.0.0git
|
Builds groups for assigning registers for pipeline stages. More...
Private Member Functions | |
LogicalResult | partiallyLowerFuncToComp (FuncOp funcOp, PatternRewriter &rewriter) const override |
LogicalResult | buildStageGroups (LoopSchedulePipelineOp whileOp, LoopSchedulePipelineStageOp stage, PatternRewriter &rewriter) const |
calyx::GroupOp | convertCombToSeqGroup (calyx::CombGroupOp combGroup, calyx::RegisterOp pipelineRegister, Value value, PatternRewriter &rewriter) const |
calyx::GroupOp | replaceGroupRegister (calyx::GroupInterface evaluatingGroup, calyx::RegisterOp pipelineRegister, PatternRewriter &rewriter) const |
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. | |
calyx::ComponentOp | getComponent () const |
Returns the component operation associated with the currently executing partial lowering. | |
template<typename T = ComponentLoweringStateInterface> | |
T & | getState () const |
CalyxLoweringState & | loweringState () const |
Return the calyx lowering state for this pattern. | |
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 |
Builds groups for assigning registers for pipeline stages.
Definition at line 1012 of file LoopScheduleToCalyx.cpp.
|
inlineprivate |
Definition at line 1027 of file LoopScheduleToCalyx.cpp.
References assert(), circt::calyx::buildAssignmentsForRegisterWrite(), convertCombToSeqGroup(), circt::calyx::FuncOpPartialLoweringPattern::loweringState(), and replaceGroupRegister().
Referenced by partiallyLowerFuncToComp().
|
inlineprivate |
Definition at line 1135 of file LoopScheduleToCalyx.cpp.
References circt::calyx::buildAssignmentsForRegisterWrite().
Referenced by buildStageGroups().
|
inlineoverrideprivate |
Definition at line 1016 of file LoopScheduleToCalyx.cpp.
References buildStageGroups().
|
inlineprivate |
Definition at line 1162 of file LoopScheduleToCalyx.cpp.
Referenced by buildStageGroups().