This patch implements
Int:
SQCVT: Multi-vector signed saturating extract narrow for 2 and 4 registers. UQCVT: Multi-vector unsigned saturating extract narrow for 2 and 4 registers. SQCVTU: Multi-vector signed saturating unsigned extract narrow for 2 and 4 registers SQCVTN: Multi-vector signed saturating extract narrow and interleave. SQCVTUN: Multi-vector signed saturating unsigned extract narrow and interleave. UQCVTN: Multi-vector unsigned saturating extract narrow and interleave.
FP:
FCVT(narrowing): Multi-vector floating-point convert from single-precision to packed half-precision. FCVTN: Multi-vector floating-point convert from single-precision to interleaved half-precision. BFCVT: Multi-vector floating-point convert from single-precision to packed BFloat16 format. BFCVTN: : Multi-vector floating-point convert from single-precision to interleaved BFloat16 format.
The reference can be found here:
https://developer.arm.com/documentation/ddi0602/2022-09
Depends on: D135563
nit: can you group all the ones using sme2_cvt_vg2_single together?