[Target][ARM] Fix VPT Block Pass miscompilation
authorPierre-vh <pierre.vanhoutryve@arm.com>
Thu, 9 Apr 2020 08:19:23 +0000 (09:19 +0100)
committerPierre-vh <pierre.vanhoutryve@arm.com>
Tue, 14 Apr 2020 14:16:27 +0000 (15:16 +0100)
commit13eb890139382e370be14938f4fffcfc20ff9613
tree5f812b7674a6e8b1334cddedeb953394aedfe706
parent456302435625e83cf474a6a085732de31f1f2d16
[Target][ARM] Fix VPT Block Pass miscompilation

The pass was incorrectly reverting back to a "T" when something wrote
to VPR inside a "E" block. This is not the correct behaviour, the
predicate should stay the same.

Differential Revision: https://reviews.llvm.org/D77798
llvm/lib/Target/ARM/MVEVPTBlockPass.cpp
llvm/test/CodeGen/Thumb2/mve-pred-not.ll
llvm/test/CodeGen/Thumb2/mve-vpt-block-elses.mir