CIRCT  20.0.0git
Private Member Functions | List of all members
circt::pipelinetocalyx::LateSSAReplacement Class Reference

LateSSAReplacement contains various functions for replacing SSA values that were not replaced during op construction. More...

Inheritance diagram for circt::pipelinetocalyx::LateSSAReplacement:
Inheritance graph
[legend]
Collaboration diagram for circt::pipelinetocalyx::LateSSAReplacement:
Collaboration graph
[legend]

Private Member Functions

LogicalResult partiallyLowerFuncToComp (FuncOp funcOp, PatternRewriter &) 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
 
CalyxLoweringStateloweringState () 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
 

Detailed Description

LateSSAReplacement contains various functions for replacing SSA values that were not replaced during op construction.

Definition at line 1352 of file LoopScheduleToCalyx.cpp.

Member Function Documentation

◆ partiallyLowerFuncToComp()

LogicalResult circt::pipelinetocalyx::LateSSAReplacement::partiallyLowerFuncToComp ( FuncOp  funcOp,
PatternRewriter &   
) const
inlineoverrideprivate

In buildOpGroups we did not replace loadOp's results, to ensure a link between evaluating groups (which fix the input addresses of a memory op) and a readData result. Now, we may replace these SSA values with their memoryOp readData output.

Definition at line 1355 of file LoopScheduleToCalyx.cpp.

References circt::calyx::singleLoadFromMemory().


The documentation for this class was generated from the following file: