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

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

+ Inheritance diagram for CanonicalizeTrivialWriteAccessSubviewOpPattern:
+ Collaboration diagram for CanonicalizeTrivialWriteAccessSubviewOpPattern:

Public Member Functions

LogicalResult matchAndRewrite (vector::TransferWriteOp writeOp, PatternRewriter &rewriter) const override
 

Detailed Description

Pattern to canonicalize trivial vector.transfer_write operations on subviews.

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

INPUT: subview = memref.subview memref [offset0, offset1, ...] vector.transfer_write value, subview[0, 0, ...]

OUTPUT: vector.transfer_write value, memref[offset0, offset1, ...]

The pattern only matches when:

Definition at line 730 of file VectorToVectorConversions.cpp.

Member Function Documentation

◆ matchAndRewrite()

LogicalResult CanonicalizeTrivialWriteAccessSubviewOpPattern::matchAndRewrite ( vector::TransferWriteOp  writeOp,
PatternRewriter &  rewriter 
) const
inlineoverride

Definition at line 734 of file VectorToVectorConversions.cpp.


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