|
CIRCT 24.0.0git
|
Base class for partial lowering passes. More...
#include <CalyxLoweringUtils.h>


Public Member Functions | |
| PartialLoweringPattern (MLIRContext *ctx, LogicalResult &resRef, PatternApplicationState &patternState) | |
| LogicalResult | matchAndRewrite (OpType op, PatternRewriter &rewriter) const override |
| virtual LogicalResult | partiallyLower (OpType op, PatternRewriter &rewriter) const =0 |
Private Attributes | |
| LogicalResult & | partialPatternRes |
| PatternApplicationState & | patternState |
Base class for partial lowering passes.
A partial lowering pass modifies the root operation in place, but does not replace the root operation. The RewritePatternType template parameter allows for using both OpRewritePattern (default) or OpInterfaceRewritePattern.
Definition at line 619 of file CalyxLoweringUtils.h.
|
inline |
Definition at line 622 of file CalyxLoweringUtils.h.
References partialPatternRes, and patternState.
|
inlineoverride |
Definition at line 627 of file CalyxLoweringUtils.h.
References failure(), partiallyLower(), partialPatternRes, and patternState.
|
pure virtual |
Implemented in circt::calyx::FuncOpPartialLoweringPattern, circt::calyx::InlineCombGroups, and circt::calyx::RewriteMemoryAccesses.
Referenced by matchAndRewrite().
|
private |
Definition at line 658 of file CalyxLoweringUtils.h.
Referenced by matchAndRewrite(), and PartialLoweringPattern().
|
private |
Definition at line 659 of file CalyxLoweringUtils.h.
Referenced by matchAndRewrite(), and PartialLoweringPattern().