[ARM] Add earlyclobber for cross beat MVE instructions
commit5c86e58fb2ba5bc54b8aa56441f46cf3c29d8ece
authorDavid Green <david.green@arm.com>
Fri, 13 Sep 2019 11:20:17 +0000 (13 11:20 +0000)
committerDavid Green <david.green@arm.com>
Fri, 13 Sep 2019 11:20:17 +0000 (13 11:20 +0000)
tree6c1540d83219a35865ef64e7b954b96777b2ab8c
parent3a064d609c1ddde4a860317afa189ad84a448ade
[ARM] Add earlyclobber for cross beat MVE instructions

rL367544 added @earlyclobbers for the MVE VREV64 instruction. This adds the
same for a number of other 32bit instructions that are similarly unpredictable
if the destination equals the source (due to the cross beat nature of the
instructions).
This includes:
  VCADD.f32
  VCADD.i32
  VCMUL.f32
  VHCADD.s32
  VMULLT/B.s/u32
  VQDMLADH{X}.s32
  VQRDMLADH{X}.s32
  VQDMLSDH{X}.s32
  VQRDMLSDH{X}.s32
  VQDMULLT/B.s32 with Qm and Rm

No tests here as this would require intrinsics (or very interesting codegen) to
manifest. The tests will follow naturally as the intrinsics are added.

Differential Revision: https://reviews.llvm.org/D67462

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@371838 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMInstrMVE.td