[AArch64][SVE2] Add the SVE2.1 shift-and-narrow instructions
authorDavid Sherwood <david.sherwood@arm.com>
Wed, 19 Oct 2022 15:21:08 +0000 (15:21 +0000)
committerDavid Sherwood <david.sherwood@arm.com>
Mon, 31 Oct 2022 13:45:57 +0000 (13:45 +0000)
commit4b48c3993be08f1a330dfb91def82baf6efdb544
tree2c7d39546a08f028008618c3464e0458c4287574
parent9265b7fa83b94d46f0bb0270eb69fb03ed92f603
[AArch64][SVE2] Add the SVE2.1 shift-and-narrow instructions

This patch adds the assembly/disassembly for the following instructions:

sqrshrn  : Signed saturating rounding shift right narrow by immediate and interleave
sqrshrun : Signed saturating rounding shift right unsigned narrow by immediate and interleave
uqrshrn  : Unsigned saturating rounding shift right narrow by immediate and interleave

The reference can be found here:
https://developer.arm.com/documentation/ddi0602/2022-09

Differential Revision: https://reviews.llvm.org/D136690
llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
llvm/lib/Target/AArch64/SVEInstrFormats.td
llvm/test/MC/AArch64/SVE2p1/sqrshrn-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE2p1/sqrshrn.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE2p1/sqrshrun-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE2p1/sqrshrun.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE2p1/uqrshrn-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE2p1/uqrshrn.s [new file with mode: 0644]