[MLIR][affine] Prevent fusion when ops with memory effect free are present between...
authorVinayaka Bandishti <vinayaka@polymagelabs.com>
Mon, 22 Feb 2021 16:01:48 +0000 (21:31 +0530)
committerUday Bondhugula <uday@polymagelabs.com>
Mon, 22 Feb 2021 17:51:02 +0000 (23:21 +0530)
commit15332982c3d8d1c9e8bd7ae9f76f22f77adb51ee
tree1b7e7a2f4e3000d9c6141d2d4197225cdb6e7b0a
parented4230732adeb04a23fc25b7a5924e423ba5ac91
[MLIR][affine] Prevent fusion when ops with memory effect free are present between producer and consumer

This commit fixes a bug in affine fusion pipeline where an
incorrect fusion is performed despite a dealloc op is present
between a producer and a consumer. This is done by creating a
node for dealloc op in the MDG.

Reviewed By: bondhugula, dcaballe

Differential Revision: https://reviews.llvm.org/D97032
mlir/lib/Transforms/LoopFusion.cpp
mlir/test/Transforms/loop-fusion.mlir