[SimpleLoopUnswitch] Port partially invariant unswitch from LoopUnswitch to SimpleLoo...
authorJingu Kang <jingu.kang@arm.com>
Fri, 21 May 2021 11:34:40 +0000 (12:34 +0100)
committerJingu Kang <jingu.kang@arm.com>
Wed, 2 Jun 2021 09:58:22 +0000 (10:58 +0100)
commitf3a27511c9f820f12a16445a7c130cb34693608d
treec2d2b10032f8223c558536dbfe4d0cbc4f18af81
parentfe208a4ef449d6e917dc5695ba793f4428980de3
[SimpleLoopUnswitch] Port partially invariant unswitch from LoopUnswitch to SimpleLoopUnswitch

This re-enables commit 107d19eb017ff6734986af077eb2e9f6600114a9 with bug fixes.

Differential Revision: https://reviews.llvm.org/D99354
llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
llvm/test/Transforms/SimpleLoopUnswitch/endless-unswitch.ll [new file with mode: 0644]
llvm/test/Transforms/SimpleLoopUnswitch/partial-unswitch-mssa-threshold.ll [new file with mode: 0644]
llvm/test/Transforms/SimpleLoopUnswitch/partial-unswitch-update-memoryssa.ll [new file with mode: 0644]
llvm/test/Transforms/SimpleLoopUnswitch/partial-unswitch.ll