diff --git a/gas/testsuite/gas/aarch64/sve2p1-1-bad.l b/gas/testsuite/gas/aarch64/sve2p1-1-bad.l
index 1b6a9683b65..24c8793a4cd 100644
--- a/gas/testsuite/gas/aarch64/sve2p1-1-bad.l
+++ b/gas/testsuite/gas/aarch64/sve2p1-1-bad.l
@@ -1,68 +1,85 @@
 .*: Assembler messages:
-.*: Error: selected processor does not support `addqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `addqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `addqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `addqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `addqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `addqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `andqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `andqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `andqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `andqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `andqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `andqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `smaxqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `smaxqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `smaxqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `smaxqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `smaxqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `smaxqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `umaxqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `umaxqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `umaxqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `umaxqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `umaxqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `umaxqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `sminqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `sminqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `sminqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `sminqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `sminqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `sminqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `uminqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `uminqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `uminqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `uminqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `uminqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `uminqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `eorqv v0.16b,p0,z16.b'
-.*: Error: selected processor does not support `eorqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `eorqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `eorqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `eorqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `eorqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `faddqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `faddqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `faddqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `faddqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `faddqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `fmaxnmqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `fmaxnmqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `fmaxnmqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `fmaxnmqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `fmaxnmqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `fmaxqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `fmaxqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `fmaxqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `fmaxqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `fmaxqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `fminnmqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `fminnmqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `fminnmqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `fminnmqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `fminnmqv v16.4s,p7,z0.s'
-.*: Error: selected processor does not support `fminqv v1.8h,p1,z8.h'
-.*: Error: selected processor does not support `fminqv v2.4s,p2,z4.s'
-.*: Error: selected processor does not support `fminqv v4.2d,p3,z2.d'
-.*: Error: selected processor does not support `fminqv v8.2d,p4,z1.d'
-.*: Error: selected processor does not support `fminqv v16.4s,p7,z0.s'
+.*: selected processor does not support `addqv v0.16b,p0,z0.b'
+.*: selected processor does not support `addqv v31.16b,p0,z0.b'
+.*: selected processor does not support `addqv v0.2d,p0,z0.d'
+.*: selected processor does not support `addqv v0.16b,p7,z0.b'
+.*: selected processor does not support `addqv v0.16b,p0,z31.b'
+.*: selected processor does not support `addqv v31.2d,p7,z31.d'
+.*: selected processor does not support `addqv v10.4s,p3,z20.s'
+.*: selected processor does not support `andqv v0.16b,p0,z0.b'
+.*: selected processor does not support `andqv v31.16b,p0,z0.b'
+.*: selected processor does not support `andqv v0.2d,p0,z0.d'
+.*: selected processor does not support `andqv v0.16b,p7,z0.b'
+.*: selected processor does not support `andqv v0.16b,p0,z31.b'
+.*: selected processor does not support `andqv v31.2d,p7,z31.d'
+.*: selected processor does not support `andqv v10.4s,p3,z20.s'
+.*: selected processor does not support `smaxqv v0.16b,p0,z0.b'
+.*: selected processor does not support `smaxqv v31.16b,p0,z0.b'
+.*: selected processor does not support `smaxqv v0.2d,p0,z0.d'
+.*: selected processor does not support `smaxqv v0.16b,p7,z0.b'
+.*: selected processor does not support `smaxqv v0.16b,p0,z31.b'
+.*: selected processor does not support `smaxqv v31.2d,p7,z31.d'
+.*: selected processor does not support `smaxqv v10.4s,p3,z20.s'
+.*: selected processor does not support `umaxqv v0.16b,p0,z0.b'
+.*: selected processor does not support `umaxqv v31.16b,p0,z0.b'
+.*: selected processor does not support `umaxqv v0.2d,p0,z0.d'
+.*: selected processor does not support `umaxqv v0.16b,p7,z0.b'
+.*: selected processor does not support `umaxqv v0.16b,p0,z31.b'
+.*: selected processor does not support `umaxqv v31.2d,p7,z31.d'
+.*: selected processor does not support `umaxqv v10.4s,p3,z20.s'
+.*: selected processor does not support `sminqv v0.16b,p0,z0.b'
+.*: selected processor does not support `sminqv v31.16b,p0,z0.b'
+.*: selected processor does not support `sminqv v0.2d,p0,z0.d'
+.*: selected processor does not support `sminqv v0.16b,p7,z0.b'
+.*: selected processor does not support `sminqv v0.16b,p0,z31.b'
+.*: selected processor does not support `sminqv v31.2d,p7,z31.d'
+.*: selected processor does not support `sminqv v10.4s,p3,z20.s'
+.*: selected processor does not support `uminqv v0.16b,p0,z0.b'
+.*: selected processor does not support `uminqv v31.16b,p0,z0.b'
+.*: selected processor does not support `uminqv v0.2d,p0,z0.d'
+.*: selected processor does not support `uminqv v0.16b,p7,z0.b'
+.*: selected processor does not support `uminqv v0.16b,p0,z31.b'
+.*: selected processor does not support `uminqv v31.2d,p7,z31.d'
+.*: selected processor does not support `uminqv v10.4s,p3,z20.s'
+.*: selected processor does not support `eorqv v0.16b,p0,z0.b'
+.*: selected processor does not support `eorqv v31.16b,p0,z0.b'
+.*: selected processor does not support `eorqv v0.2d,p0,z0.d'
+.*: selected processor does not support `eorqv v0.16b,p7,z0.b'
+.*: selected processor does not support `eorqv v0.16b,p0,z31.b'
+.*: selected processor does not support `eorqv v31.2d,p7,z31.d'
+.*: selected processor does not support `eorqv v10.4s,p3,z20.s'
+.*: selected processor does not support `faddqv v0.8h,p0,z0.h'
+.*: selected processor does not support `faddqv v31.8h,p0,z0.h'
+.*: selected processor does not support `faddqv v0.2d,p0,z0.d'
+.*: selected processor does not support `faddqv v0.8h,p7,z0.h'
+.*: selected processor does not support `faddqv v0.8h,p0,z31.h'
+.*: selected processor does not support `faddqv v31.2d,p7,z31.d'
+.*: selected processor does not support `faddqv v10.4s,p3,z20.s'
+.*: selected processor does not support `fmaxnmqv v0.8h,p0,z0.h'
+.*: selected processor does not support `fmaxnmqv v31.8h,p0,z0.h'
+.*: selected processor does not support `fmaxnmqv v0.2d,p0,z0.d'
+.*: selected processor does not support `fmaxnmqv v0.8h,p7,z0.h'
+.*: selected processor does not support `fmaxnmqv v0.8h,p0,z31.h'
+.*: selected processor does not support `fmaxnmqv v31.2d,p7,z31.d'
+.*: selected processor does not support `fmaxnmqv v10.4s,p3,z20.s'
+.*: selected processor does not support `fmaxqv v0.8h,p0,z0.h'
+.*: selected processor does not support `fmaxqv v31.8h,p0,z0.h'
+.*: selected processor does not support `fmaxqv v0.2d,p0,z0.d'
+.*: selected processor does not support `fmaxqv v0.8h,p7,z0.h'
+.*: selected processor does not support `fmaxqv v0.8h,p0,z31.h'
+.*: selected processor does not support `fmaxqv v31.2d,p7,z31.d'
+.*: selected processor does not support `fmaxqv v10.4s,p3,z20.s'
+.*: selected processor does not support `fminnmqv v0.8h,p0,z0.h'
+.*: selected processor does not support `fminnmqv v31.8h,p0,z0.h'
+.*: selected processor does not support `fminnmqv v0.2d,p0,z0.d'
+.*: selected processor does not support `fminnmqv v0.8h,p7,z0.h'
+.*: selected processor does not support `fminnmqv v0.8h,p0,z31.h'
+.*: selected processor does not support `fminnmqv v31.2d,p7,z31.d'
+.*: selected processor does not support `fminnmqv v10.4s,p3,z20.s'
+.*: selected processor does not support `fminqv v0.8h,p0,z0.h'
+.*: selected processor does not support `fminqv v31.8h,p0,z0.h'
+.*: selected processor does not support `fminqv v0.2d,p0,z0.d'
+.*: selected processor does not support `fminqv v0.8h,p7,z0.h'
+.*: selected processor does not support `fminqv v0.8h,p0,z31.h'
+.*: selected processor does not support `fminqv v31.2d,p7,z31.d'
+.*: selected processor does not support `fminqv v10.4s,p3,z20.s'
diff --git a/gas/testsuite/gas/aarch64/sve2p1-1.d b/gas/testsuite/gas/aarch64/sve2p1-1.d
index 8277a1386f2..1f52e3c7f84 100644
--- a/gas/testsuite/gas/aarch64/sve2p1-1.d
+++ b/gas/testsuite/gas/aarch64/sve2p1-1.d
@@ -8,70 +8,87 @@
 [^:]+:
 
 [^:]+:
-.*:	04052200 	addqv	v0.16b, p0, z16.b
-.*:	04452501 	addqv	v1.8h, p1, z8.h
-.*:	04852882 	addqv	v2.4s, p2, z4.s
-.*:	04c52c44 	addqv	v4.2d, p3, z2.d
-.*:	04c53028 	addqv	v8.2d, p4, z1.d
-.*:	04853c10 	addqv	v16.4s, p7, z0.s
-.*:	041e2200 	andqv	v0.16b, p0, z16.b
-.*:	045e2501 	andqv	v1.8h, p1, z8.h
-.*:	049e2882 	andqv	v2.4s, p2, z4.s
-.*:	04de2c44 	andqv	v4.2d, p3, z2.d
-.*:	04de3028 	andqv	v8.2d, p4, z1.d
-.*:	049e3c10 	andqv	v16.4s, p7, z0.s
-.*:	040c2200 	smaxqv	v0.16b, p0, z16.b
-.*:	044c2501 	smaxqv	v1.8h, p1, z8.h
-.*:	048c2882 	smaxqv	v2.4s, p2, z4.s
-.*:	04cc2c44 	smaxqv	v4.2d, p3, z2.d
-.*:	04cc3028 	smaxqv	v8.2d, p4, z1.d
-.*:	048c3c10 	smaxqv	v16.4s, p7, z0.s
-.*:	040d2200 	umaxqv	v0.16b, p0, z16.b
-.*:	044d2501 	umaxqv	v1.8h, p1, z8.h
-.*:	048d2882 	umaxqv	v2.4s, p2, z4.s
-.*:	04cd2c44 	umaxqv	v4.2d, p3, z2.d
-.*:	04cd3028 	umaxqv	v8.2d, p4, z1.d
-.*:	048d3c10 	umaxqv	v16.4s, p7, z0.s
-.*:	040e2200 	sminqv	v0.16b, p0, z16.b
-.*:	044e2501 	sminqv	v1.8h, p1, z8.h
-.*:	048e2882 	sminqv	v2.4s, p2, z4.s
-.*:	04ce2c44 	sminqv	v4.2d, p3, z2.d
-.*:	04ce3028 	sminqv	v8.2d, p4, z1.d
-.*:	048e3c10 	sminqv	v16.4s, p7, z0.s
-.*:	040f2200 	uminqv	v0.16b, p0, z16.b
-.*:	044f2501 	uminqv	v1.8h, p1, z8.h
-.*:	048f2882 	uminqv	v2.4s, p2, z4.s
-.*:	04cf2c44 	uminqv	v4.2d, p3, z2.d
-.*:	04cf3028 	uminqv	v8.2d, p4, z1.d
-.*:	048f3c10 	uminqv	v16.4s, p7, z0.s
-.*:	041d2200 	eorqv	v0.16b, p0, z16.b
-.*:	045d2501 	eorqv	v1.8h, p1, z8.h
-.*:	049d2882 	eorqv	v2.4s, p2, z4.s
-.*:	04dd2c44 	eorqv	v4.2d, p3, z2.d
-.*:	04dd3028 	eorqv	v8.2d, p4, z1.d
-.*:	049d3c10 	eorqv	v16.4s, p7, z0.s
-.*:	6450a501 	faddqv	v1.8h, p1, z8.h
-.*:	6490a882 	faddqv	v2.4s, p2, z4.s
-.*:	64d0ac44 	faddqv	v4.2d, p3, z2.d
-.*:	64d0b028 	faddqv	v8.2d, p4, z1.d
-.*:	6490bc10 	faddqv	v16.4s, p7, z0.s
-.*:	6454a501 	fmaxnmqv	v1.8h, p1, z8.h
-.*:	6494a882 	fmaxnmqv	v2.4s, p2, z4.s
-.*:	64d4ac44 	fmaxnmqv	v4.2d, p3, z2.d
-.*:	64d4b028 	fmaxnmqv	v8.2d, p4, z1.d
-.*:	6494bc10 	fmaxnmqv	v16.4s, p7, z0.s
-.*:	6456a501 	fmaxqv	v1.8h, p1, z8.h
-.*:	6496a882 	fmaxqv	v2.4s, p2, z4.s
-.*:	64d6ac44 	fmaxqv	v4.2d, p3, z2.d
-.*:	64d6b028 	fmaxqv	v8.2d, p4, z1.d
-.*:	6496bc10 	fmaxqv	v16.4s, p7, z0.s
-.*:	6455a501 	fminnmqv	v1.8h, p1, z8.h
-.*:	6495a882 	fminnmqv	v2.4s, p2, z4.s
-.*:	64d5ac44 	fminnmqv	v4.2d, p3, z2.d
-.*:	64d5b028 	fminnmqv	v8.2d, p4, z1.d
-.*:	6495bc10 	fminnmqv	v16.4s, p7, z0.s
-.*:	6457a501 	fminqv	v1.8h, p1, z8.h
-.*:	6497a882 	fminqv	v2.4s, p2, z4.s
-.*:	64d7ac44 	fminqv	v4.2d, p3, z2.d
-.*:	64d7b028 	fminqv	v8.2d, p4, z1.d
-.*:	6497bc10 	fminqv	v16.4s, p7, z0.s
+.*:	04052000 	addqv	v0.16b, p0, z0.b
+.*:	0405201f 	addqv	v31.16b, p0, z0.b
+.*:	04c52000 	addqv	v0.2d, p0, z0.d
+.*:	04053c00 	addqv	v0.16b, p7, z0.b
+.*:	040523e0 	addqv	v0.16b, p0, z31.b
+.*:	04c53fff 	addqv	v31.2d, p7, z31.d
+.*:	04852e8a 	addqv	v10.4s, p3, z20.s
+.*:	041e2000 	andqv	v0.16b, p0, z0.b
+.*:	041e201f 	andqv	v31.16b, p0, z0.b
+.*:	04de2000 	andqv	v0.2d, p0, z0.d
+.*:	041e3c00 	andqv	v0.16b, p7, z0.b
+.*:	041e23e0 	andqv	v0.16b, p0, z31.b
+.*:	04de3fff 	andqv	v31.2d, p7, z31.d
+.*:	049e2e8a 	andqv	v10.4s, p3, z20.s
+.*:	040c2000 	smaxqv	v0.16b, p0, z0.b
+.*:	040c201f 	smaxqv	v31.16b, p0, z0.b
+.*:	04cc2000 	smaxqv	v0.2d, p0, z0.d
+.*:	040c3c00 	smaxqv	v0.16b, p7, z0.b
+.*:	040c23e0 	smaxqv	v0.16b, p0, z31.b
+.*:	04cc3fff 	smaxqv	v31.2d, p7, z31.d
+.*:	048c2e8a 	smaxqv	v10.4s, p3, z20.s
+.*:	040d2000 	umaxqv	v0.16b, p0, z0.b
+.*:	040d201f 	umaxqv	v31.16b, p0, z0.b
+.*:	04cd2000 	umaxqv	v0.2d, p0, z0.d
+.*:	040d3c00 	umaxqv	v0.16b, p7, z0.b
+.*:	040d23e0 	umaxqv	v0.16b, p0, z31.b
+.*:	04cd3fff 	umaxqv	v31.2d, p7, z31.d
+.*:	048d2e8a 	umaxqv	v10.4s, p3, z20.s
+.*:	040e2000 	sminqv	v0.16b, p0, z0.b
+.*:	040e201f 	sminqv	v31.16b, p0, z0.b
+.*:	04ce2000 	sminqv	v0.2d, p0, z0.d
+.*:	040e3c00 	sminqv	v0.16b, p7, z0.b
+.*:	040e23e0 	sminqv	v0.16b, p0, z31.b
+.*:	04ce3fff 	sminqv	v31.2d, p7, z31.d
+.*:	048e2e8a 	sminqv	v10.4s, p3, z20.s
+.*:	040f2000 	uminqv	v0.16b, p0, z0.b
+.*:	040f201f 	uminqv	v31.16b, p0, z0.b
+.*:	04cf2000 	uminqv	v0.2d, p0, z0.d
+.*:	040f3c00 	uminqv	v0.16b, p7, z0.b
+.*:	040f23e0 	uminqv	v0.16b, p0, z31.b
+.*:	04cf3fff 	uminqv	v31.2d, p7, z31.d
+.*:	048f2e8a 	uminqv	v10.4s, p3, z20.s
+.*:	041d2000 	eorqv	v0.16b, p0, z0.b
+.*:	041d201f 	eorqv	v31.16b, p0, z0.b
+.*:	04dd2000 	eorqv	v0.2d, p0, z0.d
+.*:	041d3c00 	eorqv	v0.16b, p7, z0.b
+.*:	041d23e0 	eorqv	v0.16b, p0, z31.b
+.*:	04dd3fff 	eorqv	v31.2d, p7, z31.d
+.*:	049d2e8a 	eorqv	v10.4s, p3, z20.s
+.*:	6450a000 	faddqv	v0.8h, p0, z0.h
+.*:	6450a01f 	faddqv	v31.8h, p0, z0.h
+.*:	64d0a000 	faddqv	v0.2d, p0, z0.d
+.*:	6450bc00 	faddqv	v0.8h, p7, z0.h
+.*:	6450a3e0 	faddqv	v0.8h, p0, z31.h
+.*:	64d0bfff 	faddqv	v31.2d, p7, z31.d
+.*:	6490ae8a 	faddqv	v10.4s, p3, z20.s
+.*:	6454a000 	fmaxnmqv	v0.8h, p0, z0.h
+.*:	6454a01f 	fmaxnmqv	v31.8h, p0, z0.h
+.*:	64d4a000 	fmaxnmqv	v0.2d, p0, z0.d
+.*:	6454bc00 	fmaxnmqv	v0.8h, p7, z0.h
+.*:	6454a3e0 	fmaxnmqv	v0.8h, p0, z31.h
+.*:	64d4bfff 	fmaxnmqv	v31.2d, p7, z31.d
+.*:	6494ae8a 	fmaxnmqv	v10.4s, p3, z20.s
+.*:	6456a000 	fmaxqv	v0.8h, p0, z0.h
+.*:	6456a01f 	fmaxqv	v31.8h, p0, z0.h
+.*:	64d6a000 	fmaxqv	v0.2d, p0, z0.d
+.*:	6456bc00 	fmaxqv	v0.8h, p7, z0.h
+.*:	6456a3e0 	fmaxqv	v0.8h, p0, z31.h
+.*:	64d6bfff 	fmaxqv	v31.2d, p7, z31.d
+.*:	6496ae8a 	fmaxqv	v10.4s, p3, z20.s
+.*:	6455a000 	fminnmqv	v0.8h, p0, z0.h
+.*:	6455a01f 	fminnmqv	v31.8h, p0, z0.h
+.*:	64d5a000 	fminnmqv	v0.2d, p0, z0.d
+.*:	6455bc00 	fminnmqv	v0.8h, p7, z0.h
+.*:	6455a3e0 	fminnmqv	v0.8h, p0, z31.h
+.*:	64d5bfff 	fminnmqv	v31.2d, p7, z31.d
+.*:	6495ae8a 	fminnmqv	v10.4s, p3, z20.s
+.*:	6457a000 	fminqv	v0.8h, p0, z0.h
+.*:	6457a01f 	fminqv	v31.8h, p0, z0.h
+.*:	64d7a000 	fminqv	v0.2d, p0, z0.d
+.*:	6457bc00 	fminqv	v0.8h, p7, z0.h
+.*:	6457a3e0 	fminqv	v0.8h, p0, z31.h
+.*:	64d7bfff 	fminqv	v31.2d, p7, z31.d
+.*:	6497ae8a 	fminqv	v10.4s, p3, z20.s
diff --git a/gas/testsuite/gas/aarch64/sve2p1-1.s b/gas/testsuite/gas/aarch64/sve2p1-1.s
index 1e7c2ceceba..3dd35b84a45 100644
--- a/gas/testsuite/gas/aarch64/sve2p1-1.s
+++ b/gas/testsuite/gas/aarch64/sve2p1-1.s
@@ -1,77 +1,95 @@
-addqv v0.16b, p0, z16.b
-addqv v1.8h, p1, z8.h
-addqv v2.4s, p2, z4.s
-addqv v4.2d, p3, z2.d
-addqv v8.2d, p4, z1.d
-addqv v16.4s, p7, z0.s
+addqv v0.16b, p0, z0.b
+addqv v31.16b, p0, z0.b
+addqv v0.2d, p0, z0.d
+addqv v0.16b, p7, z0.b
+addqv v0.16b, p0, z31.b
+addqv v31.2d, p7, z31.d
+addqv v10.4s, p3, z20.s
 
-andqv v0.16b, p0, z16.b
-andqv v1.8h, p1, z8.h
-andqv v2.4s, p2, z4.s
-andqv v4.2d, p3, z2.d
-andqv v8.2d, p4, z1.d
-andqv v16.4s, p7, z0.s
+andqv v0.16b, p0, z0.b
+andqv v31.16b, p0, z0.b
+andqv v0.2d, p0, z0.d
+andqv v0.16b, p7, z0.b
+andqv v0.16b, p0, z31.b
+andqv v31.2d, p7, z31.d
+andqv v10.4s, p3, z20.s
 
-smaxqv v0.16b, p0, z16.b
-smaxqv v1.8h, p1, z8.h
-smaxqv v2.4s, p2, z4.s
-smaxqv v4.2d, p3, z2.d
-smaxqv v8.2d, p4, z1.d
-smaxqv v16.4s, p7, z0.s
+smaxqv v0.16b, p0, z0.b
+smaxqv v31.16b, p0, z0.b
+smaxqv v0.2d, p0, z0.d
+smaxqv v0.16b, p7, z0.b
+smaxqv v0.16b, p0, z31.b
+smaxqv v31.2d, p7, z31.d
+smaxqv v10.4s, p3, z20.s
 
-umaxqv v0.16b, p0, z16.b
-umaxqv v1.8h, p1, z8.h
-umaxqv v2.4s, p2, z4.s
-umaxqv v4.2d, p3, z2.d
-umaxqv v8.2d, p4, z1.d
-umaxqv v16.4s, p7, z0.s
+umaxqv v0.16b, p0, z0.b
+umaxqv v31.16b, p0, z0.b
+umaxqv v0.2d, p0, z0.d
+umaxqv v0.16b, p7, z0.b
+umaxqv v0.16b, p0, z31.b
+umaxqv v31.2d, p7, z31.d
+umaxqv v10.4s, p3, z20.s
 
-sminqv v0.16b, p0, z16.b
-sminqv v1.8h, p1, z8.h
-sminqv v2.4s, p2, z4.s
-sminqv v4.2d, p3, z2.d
-sminqv v8.2d, p4, z1.d
-sminqv v16.4s, p7, z0.s
+sminqv v0.16b, p0, z0.b
+sminqv v31.16b, p0, z0.b
+sminqv v0.2d, p0, z0.d
+sminqv v0.16b, p7, z0.b
+sminqv v0.16b, p0, z31.b
+sminqv v31.2d, p7, z31.d
+sminqv v10.4s, p3, z20.s
 
-uminqv v0.16b, p0, z16.b
-uminqv v1.8h, p1, z8.h
-uminqv v2.4s, p2, z4.s
-uminqv v4.2d, p3, z2.d
-uminqv v8.2d, p4, z1.d
-uminqv v16.4s, p7, z0.s
-eorqv v0.16b, p0, z16.b
-eorqv v1.8h, p1, z8.h
-eorqv v2.4s, p2, z4.s
-eorqv v4.2d, p3, z2.d
-eorqv v8.2d, p4, z1.d
-eorqv v16.4s, p7, z0.s
+uminqv v0.16b, p0, z0.b
+uminqv v31.16b, p0, z0.b
+uminqv v0.2d, p0, z0.d
+uminqv v0.16b, p7, z0.b
+uminqv v0.16b, p0, z31.b
+uminqv v31.2d, p7, z31.d
+uminqv v10.4s, p3, z20.s
 
-faddqv v1.8h, p1, z8.h
-faddqv v2.4s, p2, z4.s
-faddqv v4.2d, p3, z2.d
-faddqv v8.2d, p4, z1.d
-faddqv v16.4s, p7, z0.s
+eorqv v0.16b, p0, z0.b
+eorqv v31.16b, p0, z0.b
+eorqv v0.2d, p0, z0.d
+eorqv v0.16b, p7, z0.b
+eorqv v0.16b, p0, z31.b
+eorqv v31.2d, p7, z31.d
+eorqv v10.4s, p3, z20.s
 
-fmaxnmqv v1.8h, p1, z8.h
-fmaxnmqv v2.4s, p2, z4.s
-fmaxnmqv v4.2d, p3, z2.d
-fmaxnmqv v8.2d, p4, z1.d
-fmaxnmqv v16.4s, p7, z0.s
+faddqv v0.8h, p0, z0.h
+faddqv v31.8h, p0, z0.h
+faddqv v0.2d, p0, z0.d
+faddqv v0.8h, p7, z0.h
+faddqv v0.8h, p0, z31.h
+faddqv v31.2d, p7, z31.d
+faddqv v10.4s, p3, z20.s
 
-fmaxqv v1.8h, p1, z8.h
-fmaxqv v2.4s, p2, z4.s
-fmaxqv v4.2d, p3, z2.d
-fmaxqv v8.2d, p4, z1.d
-fmaxqv v16.4s, p7, z0.s
+fmaxnmqv v0.8h, p0, z0.h
+fmaxnmqv v31.8h, p0, z0.h
+fmaxnmqv v0.2d, p0, z0.d
+fmaxnmqv v0.8h, p7, z0.h
+fmaxnmqv v0.8h, p0, z31.h
+fmaxnmqv v31.2d, p7, z31.d
+fmaxnmqv v10.4s, p3, z20.s
 
-fminnmqv v1.8h, p1, z8.h
-fminnmqv v2.4s, p2, z4.s
-fminnmqv v4.2d, p3, z2.d
-fminnmqv v8.2d, p4, z1.d
-fminnmqv v16.4s, p7, z0.s
+fmaxqv v0.8h, p0, z0.h
+fmaxqv v31.8h, p0, z0.h
+fmaxqv v0.2d, p0, z0.d
+fmaxqv v0.8h, p7, z0.h
+fmaxqv v0.8h, p0, z31.h
+fmaxqv v31.2d, p7, z31.d
+fmaxqv v10.4s, p3, z20.s
 
-fminqv v1.8h, p1, z8.h
-fminqv v2.4s, p2, z4.s
-fminqv v4.2d, p3, z2.d
-fminqv v8.2d, p4, z1.d
-fminqv v16.4s, p7, z0.s
+fminnmqv v0.8h, p0, z0.h
+fminnmqv v31.8h, p0, z0.h
+fminnmqv v0.2d, p0, z0.d
+fminnmqv v0.8h, p7, z0.h
+fminnmqv v0.8h, p0, z31.h
+fminnmqv v31.2d, p7, z31.d
+fminnmqv v10.4s, p3, z20.s
+
+fminqv v0.8h, p0, z0.h
+fminqv v31.8h, p0, z0.h
+fminqv v0.2d, p0, z0.d
+fminqv v0.8h, p7, z0.h
+fminqv v0.8h, p0, z31.h
+fminqv v31.2d, p7, z31.d
+fminqv v10.4s, p3, z20.s
diff --git a/gas/testsuite/gas/aarch64/sve2p1-3-bad.d b/gas/testsuite/gas/aarch64/sve2p1-3-bad.d
new file mode 100644
index 00000000000..e14c382511f
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2p1-3-bad.d
@@ -0,0 +1,3 @@
+#name: Test of illegal SVE2.1 min and max instruction.
+#as: -march=armv9.4-a
+#error_output: sve2p1-3-bad.l
diff --git a/gas/testsuite/gas/aarch64/sve2p1-3-bad.l b/gas/testsuite/gas/aarch64/sve2p1-3-bad.l
new file mode 100644
index 00000000000..a1fbdc6cbdf
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2p1-3-bad.l
@@ -0,0 +1,208 @@
+.*: Assembler messages:
+.*: Error: operand mismatch -- `addqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	addqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	addqv v0.8h, p0, z0.h
+.*: Info:    	addqv v0.4s, p0, z0.s
+.*: Info:    	addqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `addqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `addqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	addqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	addqv v0.8h, p7, z0.h
+.*: Info:    	addqv v0.4s, p7, z0.s
+.*: Info:    	addqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `addqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `smaxqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	smaxqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	smaxqv v0.8h, p0, z0.h
+.*: Info:    	smaxqv v0.4s, p0, z0.s
+.*: Info:    	smaxqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `smaxqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `smaxqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	smaxqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	smaxqv v0.8h, p7, z0.h
+.*: Info:    	smaxqv v0.4s, p7, z0.s
+.*: Info:    	smaxqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `smaxqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `andqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	andqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	andqv v0.8h, p0, z0.h
+.*: Info:    	andqv v0.4s, p0, z0.s
+.*: Info:    	andqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `andqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `andqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	andqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	andqv v0.8h, p7, z0.h
+.*: Info:    	andqv v0.4s, p7, z0.s
+.*: Info:    	andqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `andqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `umaxqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	umaxqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	umaxqv v0.8h, p0, z0.h
+.*: Info:    	umaxqv v0.4s, p0, z0.s
+.*: Info:    	umaxqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `umaxqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `umaxqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	umaxqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	umaxqv v0.8h, p7, z0.h
+.*: Info:    	umaxqv v0.4s, p7, z0.s
+.*: Info:    	umaxqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `umaxqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `sminqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	sminqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	sminqv v0.8h, p0, z0.h
+.*: Info:    	sminqv v0.4s, p0, z0.s
+.*: Info:    	sminqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `sminqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `sminqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	sminqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	sminqv v0.8h, p7, z0.h
+.*: Info:    	sminqv v0.4s, p7, z0.s
+.*: Info:    	sminqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `sminqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `uminqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	uminqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	uminqv v0.8h, p0, z0.h
+.*: Info:    	uminqv v0.4s, p0, z0.s
+.*: Info:    	uminqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `uminqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `uminqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	uminqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	uminqv v0.8h, p7, z0.h
+.*: Info:    	uminqv v0.4s, p7, z0.s
+.*: Info:    	uminqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `uminqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `eorqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	eorqv v0.16b, p0, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	eorqv v0.8h, p0, z0.h
+.*: Info:    	eorqv v0.4s, p0, z0.s
+.*: Info:    	eorqv v0.2d, p0, z0.d
+.*: Error: p0-p7 expected at operand 2 -- `eorqv v31.16b,p8,z0.b'
+.*: Error: operand mismatch -- `eorqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	eorqv v0.16b, p7, z0.b
+.*: Info:    other valid variant\(s\):
+.*: Info:    	eorqv v0.8h, p7, z0.h
+.*: Info:    	eorqv v0.4s, p7, z0.s
+.*: Info:    	eorqv v0.2d, p7, z0.d
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `eorqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `faddqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	faddqv v0.8h, p0, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	faddqv v0.4s, p0, z0.s
+.*: Info:    	faddqv v0.2d, p0, z0.d
+.*: Error: operand mismatch -- `faddqv v31.16b,p8,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	faddqv v31.8h, p8, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	faddqv v31.4s, p8, z0.s
+.*: Info:    	faddqv v31.2d, p8, z0.d
+.*: Error: operand mismatch -- `faddqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	faddqv v0.2d, p7, z0.d
+.*: Info:    other valid variant\(s\):
+.*: Info:    	faddqv v0.8h, p7, z0.h
+.*: Info:    	faddqv v0.4s, p7, z0.s
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `faddqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `fmaxnmqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxnmqv v0.8h, p0, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxnmqv v0.4s, p0, z0.s
+.*: Info:    	fmaxnmqv v0.2d, p0, z0.d
+.*: Error: operand mismatch -- `fmaxnmqv v31.16b,p8,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxnmqv v31.8h, p8, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxnmqv v31.4s, p8, z0.s
+.*: Info:    	fmaxnmqv v31.2d, p8, z0.d
+.*: Error: operand mismatch -- `fmaxnmqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxnmqv v0.2d, p7, z0.d
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxnmqv v0.8h, p7, z0.h
+.*: Info:    	fmaxnmqv v0.4s, p7, z0.s
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `fmaxnmqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `fmaxqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxqv v0.8h, p0, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxqv v0.4s, p0, z0.s
+.*: Info:    	fmaxqv v0.2d, p0, z0.d
+.*: Error: operand mismatch -- `fmaxqv v31.16b,p8,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxqv v31.8h, p8, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxqv v31.4s, p8, z0.s
+.*: Info:    	fmaxqv v31.2d, p8, z0.d
+.*: Error: operand mismatch -- `fmaxqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fmaxqv v0.2d, p7, z0.d
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fmaxqv v0.8h, p7, z0.h
+.*: Info:    	fmaxqv v0.4s, p7, z0.s
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `fmaxqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `fminnmqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminnmqv v0.8h, p0, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminnmqv v0.4s, p0, z0.s
+.*: Info:    	fminnmqv v0.2d, p0, z0.d
+.*: Error: operand mismatch -- `fminnmqv v31.16b,p8,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminnmqv v31.8h, p8, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminnmqv v31.4s, p8, z0.s
+.*: Info:    	fminnmqv v31.2d, p8, z0.d
+.*: Error: operand mismatch -- `fminnmqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminnmqv v0.2d, p7, z0.d
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminnmqv v0.8h, p7, z0.h
+.*: Info:    	fminnmqv v0.4s, p7, z0.s
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `fminnmqv v0.2b,p7,z0.b'
+.*: Error: operand mismatch -- `fminqv v0.8h,p0,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminqv v0.8h, p0, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminqv v0.4s, p0, z0.s
+.*: Info:    	fminqv v0.2d, p0, z0.d
+.*: Error: operand mismatch -- `fminqv v31.16b,p8,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminqv v31.8h, p8, z0.h
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminqv v31.4s, p8, z0.s
+.*: Info:    	fminqv v31.2d, p8, z0.d
+.*: Error: operand mismatch -- `fminqv v0.2d,p7,z0.b'
+.*: Info:    did you mean this\?
+.*: Info:    	fminqv v0.2d, p7, z0.d
+.*: Info:    other valid variant\(s\):
+.*: Info:    	fminqv v0.8h, p7, z0.h
+.*: Info:    	fminqv v0.4s, p7, z0.s
+.*: Error: invalid element size 2 and vector size combination b at operand 1 -- `fminqv v0.2b,p7,z0.b'
diff --git a/gas/testsuite/gas/aarch64/sve2p1-3-bad.s b/gas/testsuite/gas/aarch64/sve2p1-3-bad.s
new file mode 100644
index 00000000000..5e56786bad1
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2p1-3-bad.s
@@ -0,0 +1,59 @@
+addqv v0.8h, p0, z0.b
+addqv v31.16b, p8, z0.b
+addqv v0.2d, p7, z0.b
+addqv v0.2b, p7, z0.b
+
+smaxqv v0.8h, p0, z0.b
+smaxqv v31.16b, p8, z0.b
+smaxqv v0.2d, p7, z0.b
+smaxqv v0.2b, p7, z0.b
+
+andqv v0.8h, p0, z0.b
+andqv v31.16b, p8, z0.b
+andqv v0.2d, p7, z0.b
+andqv v0.2b, p7, z0.b
+
+umaxqv v0.8h, p0, z0.b
+umaxqv v31.16b, p8, z0.b
+umaxqv v0.2d, p7, z0.b
+umaxqv v0.2b, p7, z0.b
+
+sminqv v0.8h, p0, z0.b
+sminqv v31.16b, p8, z0.b
+sminqv v0.2d, p7, z0.b
+sminqv v0.2b, p7, z0.b
+
+uminqv v0.8h, p0, z0.b
+uminqv v31.16b, p8, z0.b
+uminqv v0.2d, p7, z0.b
+uminqv v0.2b, p7, z0.b
+
+eorqv v0.8h, p0, z0.b
+eorqv v31.16b, p8, z0.b
+eorqv v0.2d, p7, z0.b
+eorqv v0.2b, p7, z0.b
+
+faddqv v0.8h, p0, z0.b
+faddqv v31.16b, p8, z0.b
+faddqv v0.2d, p7, z0.b
+faddqv v0.2b, p7, z0.b
+
+fmaxnmqv v0.8h, p0, z0.b
+fmaxnmqv v31.16b, p8, z0.b
+fmaxnmqv v0.2d, p7, z0.b
+fmaxnmqv v0.2b, p7, z0.b
+
+fmaxqv v0.8h, p0, z0.b
+fmaxqv v31.16b, p8, z0.b
+fmaxqv v0.2d, p7, z0.b
+fmaxqv v0.2b, p7, z0.b
+
+fminnmqv v0.8h, p0, z0.b
+fminnmqv v31.16b, p8, z0.b
+fminnmqv v0.2d, p7, z0.b
+fminnmqv v0.2b, p7, z0.b
+
+fminqv v0.8h, p0, z0.b
+fminqv v31.16b, p8, z0.b
+fminqv v0.2d, p7, z0.b
+fminqv v0.2b, p7, z0.b
