Affine Loop Fusion Utility Module (1/n).
authorAndy Davis <andydavis@google.com>
Fri, 24 May 2019 17:54:22 +0000 (10:54 -0700)
committerMehdi Amini <joker.eph@gmail.com>
Sun, 2 Jun 2019 03:00:23 +0000 (20:00 -0700)
commita560f2c646d7a762a3cf0a74ce55fc9876c1d974
treee757cac5480da0b00cc56581d72a48a1f7cdf2e6
parentae1651368f5ed243b3cedfe8f743799e5061a8de
Affine Loop Fusion Utility Module (1/n).
    *) Adds LoopFusionUtils which will expose a set of loop fusion utilities (e.g. dependence checks, fusion cost/storage reduction, loop fusion transformation) for use by loop fusion algorithms. Support for checking block-level fusion-preventing dependences is added in this CL (additional loop fusion utilities will be added in subsequent CLs).
    *) Adds TestLoopFusion test pass for testing LoopFusionUtils at a fine granularity.
    *) Adds unit test for testing dependence check for block-level fusion-preventing dependences.

--

PiperOrigin-RevId: 249861071
mlir/include/mlir/Transforms/LoopFusionUtils.h [new file with mode: 0644]
mlir/include/mlir/Transforms/Passes.h
mlir/lib/Transforms/LoopFusion.cpp
mlir/lib/Transforms/TestLoopFusion.cpp [new file with mode: 0644]
mlir/lib/Transforms/Utils/LoopFusionUtils.cpp [new file with mode: 0644]
mlir/test/Transforms/loop-fusion-dependence-check.mlir [new file with mode: 0644]