[LoopFusion] Restrict loop fusion to rotated loops.
authorKit Barton <kbarton@ca.ibm.com>
Mon, 16 Dec 2019 16:57:52 +0000 (11:57 -0500)
committerKit Barton <kbarton@ca.ibm.com>
Mon, 16 Dec 2019 20:17:29 +0000 (15:17 -0500)
commitff07fc66d9eef577f3b44716f72e581a18cd9ac9
treee9f549760494d170726581dfd363ccaaa4296ba0
parent02f644c59ad0d480285b569a0c5ecbd038866ce8
[LoopFusion] Restrict loop fusion to rotated loops.

Summary:
This patch restricts loop fusion to only consider rotated loops as valid candidates.
This simplifies the analysis and transformation and aligns with other loop optimizations.

Reviewers: jdoerfert, Meinersbur, dmgreen, etiotto, Whitney, fhahn, hfinkel

Reviewed By: Meinersbur

Subscribers: ormris, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D71025
llvm/lib/Transforms/Scalar/LoopFuse.cpp
llvm/test/Transforms/LoopFusion/cannot_fuse.ll
llvm/test/Transforms/LoopFusion/diagnostics_missed.ll
llvm/test/Transforms/LoopFusion/four_loops.ll
llvm/test/Transforms/LoopFusion/loop_nest.ll
llvm/test/Transforms/LoopFusion/simple.ll