This is an archive of the discontinued LLVM Phabricator instance.

[mlir][linalg] Add IndexedGenericOp to GenericOp canonicalization.
ClosedPublic

Authored by gysit on Apr 30 2021, 3:15 AM.

Details

Summary

Replace all linalg.indexed_generic ops by linalg.generic ops that access the iteration indices using the linalg.index op.

Diff Detail

Event Timeline

gysit created this revision.Apr 30 2021, 3:15 AM
gysit requested review of this revision.Apr 30 2021, 3:15 AM
gysit updated this revision to Diff 343031.May 5 2021, 6:52 AM

Rebase.

This revision is now accepted and ready to land.May 6 2021, 7:54 AM
mravishankar accepted this revision.May 6 2021, 9:04 AM
mravishankar added inline comments.
mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
742

Is the plan to eventually just remove linalg.indexed_generic operation? That would simplify some of the logic for operation fusion (hopefully)

pifon2a accepted this revision.May 6 2021, 9:24 AM
gysit added inline comments.May 6 2021, 11:19 AM
mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
742

Yes the goal is to remove the IndexedGenericOp. In a next step, after the patch landed, I will start to remove IndexedGenericOp support from all the passes and only in a last step I will remove it entirely.

This revision was landed with ongoing or failed builds.May 6 2021, 11:37 PM
This revision was automatically updated to reflect the committed changes.