CIRCT 24.0.0git
Loading...
Searching...
No Matches
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:
Collaboration diagram for circt::calyx::RewriteMemoryAccesses:

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::CalyxLoweringState & cls

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 815 of file CalyxLoweringUtils.h.

Constructor & Destructor Documentation

◆ RewriteMemoryAccesses()

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

Member Function Documentation

◆ partiallyLower()

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

Implements circt::calyx::PartialLoweringPattern< calyx::AssignOp >.

Definition at line 747 of file CalyxLoweringUtils.cpp.

References cls, and success().

Member Data Documentation

◆ cls

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

Definition at line 827 of file CalyxLoweringUtils.h.

Referenced by partiallyLower(), and RewriteMemoryAccesses().


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