MLIR-AIE
Public Member Functions | List of all members
CanonicalizeTrivialReadAccessSubviewOpPattern Struct Reference

Pattern to canonicalize trivial vector.transfer_read operations on subviews. More...

+ Inheritance diagram for CanonicalizeTrivialReadAccessSubviewOpPattern:
+ Collaboration diagram for CanonicalizeTrivialReadAccessSubviewOpPattern:

Public Member Functions

LogicalResult matchAndRewrite (vector::TransferReadOp readOp, PatternRewriter &rewriter) const override
 

Detailed Description

Pattern to canonicalize trivial vector.transfer_read operations on subviews.

This pattern eliminates unnecessary memref.subview operations when the transfer_read accesses the subview with all-zero indices. It transforms:

INPUT: subview = memref.subview memref [offset0, offset1, ...] result = vector.transfer_read subview[0, 0, ...]

OUTPUT: result = vector.transfer_read memref[offset0, offset1, ...]

The pattern only matches when:

Definition at line 686 of file VectorToVectorConversions.cpp.

Member Function Documentation

◆ matchAndRewrite()

LogicalResult CanonicalizeTrivialReadAccessSubviewOpPattern::matchAndRewrite ( vector::TransferReadOp  readOp,
PatternRewriter &  rewriter 
) const
inlineoverride

Definition at line 690 of file VectorToVectorConversions.cpp.


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