CIRCT  20.0.0git
Public Member Functions | Private Attributes | List of all members
circt::calyx::RewriteMemoryAccesses Class Reference

This pass rewrites memory accesses that have a width mismatch. More...

#include <CalyxLoweringUtils.h>

Inheritance diagram for circt::calyx::RewriteMemoryAccesses:
Inheritance graph
[legend]
Collaboration diagram for circt::calyx::RewriteMemoryAccesses:
Collaboration graph
[legend]

Public Member Functions

 RewriteMemoryAccesses (MLIRContext *context, LogicalResult &resRef, PatternApplicationState &patternState, calyx::CalyxLoweringState &cls)
 
LogicalResult partiallyLower (calyx::AssignOp assignOp, PatternRewriter &rewriter) const override
 
- Public Member Functions inherited from circt::calyx::PartialLoweringPattern< calyx::AssignOp >
 PartialLoweringPattern (MLIRContext *ctx, LogicalResult &resRef, PatternApplicationState &patternState)
 
LogicalResult matchAndRewrite (calyx::AssignOp op, PatternRewriter &rewriter) const override
 

Private Attributes

calyx::CalyxLoweringStatecls
 

Detailed Description

This pass rewrites memory accesses that have a width mismatch.

Such mismatches are due to index types being assumed 32-bit wide due to the lack of a width inference pass.

Definition at line 775 of file CalyxLoweringUtils.h.

Constructor & Destructor Documentation

◆ RewriteMemoryAccesses()

circt::calyx::RewriteMemoryAccesses::RewriteMemoryAccesses ( MLIRContext *  context,
LogicalResult &  resRef,
PatternApplicationState patternState,
calyx::CalyxLoweringState cls 
)
inline

Definition at line 778 of file CalyxLoweringUtils.h.

Member Function Documentation

◆ partiallyLower()

LogicalResult circt::calyx::RewriteMemoryAccesses::partiallyLower ( calyx::AssignOp  assignOp,
PatternRewriter &  rewriter 
) const
overridevirtual

Member Data Documentation

◆ cls

calyx::CalyxLoweringState& circt::calyx::RewriteMemoryAccesses::cls
private

Definition at line 787 of file CalyxLoweringUtils.h.

Referenced by partiallyLower().


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