[ARM] Delay reverting WLS in arm-block-placement
authorDavid Green <david.green@arm.com>
Tue, 28 Sep 2021 14:38:29 +0000 (15:38 +0100)
committerDavid Green <david.green@arm.com>
Tue, 28 Sep 2021 14:38:29 +0000 (15:38 +0100)
commitfdd8c10959544c14ddcf874fd9c2841a8bea1d21
treeac77cb2d640a8e53b5763210e979587f0f212dcb
parent1cd3ae019892c81a8a81daf4e2baffa3be6270db
[ARM] Delay reverting WLS in arm-block-placement

As we have to split blocks, we may be left in an invalid loop state
after a WLS is reverted to a DLS. Instead remember the WLS that could
not be fixed and revert them after finishing processing all other loops.

Differential Revision: https://reviews.llvm.org/D110567
llvm/lib/Target/ARM/ARMBlockPlacement.cpp
llvm/test/CodeGen/Thumb2/LowOverheadLoops/wls-revert-placement.mir [new file with mode: 0644]