[committed 3/4] aarch64: Remove a space from movaz za operand

Alice Carlotti alice.carlotti@arm.com
Mon Dec 29 12:06:35 GMT 2025
The za operands of most movaz instructions were originally printed with
an extra space compared to other za operands.  Remove this space, and
reduce code duplication in the process.


diff --git a/gas/testsuite/gas/aarch64/sme2p1-1.d b/gas/testsuite/gas/aarch64/sme2p1-1.d
index a6e7b7664024e7f03ddd1d8ece9d6c3bd1c79042..47c32672ae4567580fb625c65776672fc67b5d62 100644
--- a/gas/testsuite/gas/aarch64/sme2p1-1.d
+++ b/gas/testsuite/gas/aarch64/sme2p1-1.d
@@ -8,35 +8,35 @@
 [^:]+:
 
 [^:]+:
-.*:	c006c260 	movaz	{z0.b-z1.b}, za0v.b \[w14, 6:7\]
-.*:	c046c260 	movaz	{z0.h-z1.h}, za0v.h \[w14, 6:7\]
-.*:	c086c220 	movaz	{z0.s-z1.s}, za0v.s \[w14, 2:3\]
-.*:	c0c6c200 	movaz	{z0.d-z1.d}, za0v.d \[w14, 0:1\]
-.*:	c00602e0 	movaz	{z0.b-z1.b}, za0h.b \[w12, 14:15\]
-.*:	c0462260 	movaz	{z0.h-z1.h}, za0h.h \[w13, 6:7\]
-.*:	c0864220 	movaz	{z0.s-z1.s}, za0h.s \[w14, 2:3\]
-.*:	c0c66200 	movaz	{z0.d-z1.d}, za0h.d \[w15, 0:1\]
-.*:	c006c260 	movaz	{z0.b-z1.b}, za0v.b \[w14, 6:7\]
-.*:	c046c2e0 	movaz	{z0.h-z1.h}, za1v.h \[w14, 6:7\]
-.*:	c086c2a0 	movaz	{z0.s-z1.s}, za2v.s \[w14, 2:3\]
-.*:	c0c6c260 	movaz	{z0.d-z1.d}, za3v.d \[w14, 0:1\]
-.*:	c00602e0 	movaz	{z0.b-z1.b}, za0h.b \[w12, 14:15\]
-.*:	c04622e0 	movaz	{z0.h-z1.h}, za1h.h \[w13, 6:7\]
-.*:	c08642a0 	movaz	{z0.s-z1.s}, za2h.s \[w14, 2:3\]
-.*:	c0c66260 	movaz	{z0.d-z1.d}, za3h.d \[w15, 0:1\]
-.*:	c006c660 	movaz	{z0.b-z3.b}, za0v.b \[w14, 12:15\]
-.*:	c046c620 	movaz	{z0.h-z3.h}, za0v.h \[w14, 4:7\]
-.*:	c086c600 	movaz	{z0.s-z3.s}, za0v.s \[w14, 0:3\]
-.*:	c0c6c600 	movaz	{z0.d-z3.d}, za0v.d \[w14, 0:3\]
-.*:	c0060660 	movaz	{z0.b-z3.b}, za0h.b \[w12, 12:15\]
-.*:	c0462620 	movaz	{z0.h-z3.h}, za0h.h \[w13, 4:7\]
-.*:	c0864600 	movaz	{z0.s-z3.s}, za0h.s \[w14, 0:3\]
-.*:	c0c66600 	movaz	{z0.d-z3.d}, za0h.d \[w15, 0:3\]
-.*:	c006c640 	movaz	{z0.b-z3.b}, za0v.b \[w14, 8:11\]
-.*:	c046c660 	movaz	{z0.h-z3.h}, za1v.h \[w14, 4:7\]
-.*:	c086c640 	movaz	{z0.s-z3.s}, za2v.s \[w14, 0:3\]
-.*:	c0c6c660 	movaz	{z0.d-z3.d}, za3v.d \[w14, 0:3\]
-.*:	c0060660 	movaz	{z0.b-z3.b}, za0h.b \[w12, 12:15\]
-.*:	c0462660 	movaz	{z0.h-z3.h}, za1h.h \[w13, 4:7\]
-.*:	c0864640 	movaz	{z0.s-z3.s}, za2h.s \[w14, 0:3\]
-.*:	c0c66660 	movaz	{z0.d-z3.d}, za3h.d \[w15, 0:3\]
+.*:	c006c260 	movaz	{z0.b-z1.b}, za0v.b\[w14, 6:7\]
+.*:	c046c260 	movaz	{z0.h-z1.h}, za0v.h\[w14, 6:7\]
+.*:	c086c220 	movaz	{z0.s-z1.s}, za0v.s\[w14, 2:3\]
+.*:	c0c6c200 	movaz	{z0.d-z1.d}, za0v.d\[w14, 0:1\]
+.*:	c00602e0 	movaz	{z0.b-z1.b}, za0h.b\[w12, 14:15\]
+.*:	c0462260 	movaz	{z0.h-z1.h}, za0h.h\[w13, 6:7\]
+.*:	c0864220 	movaz	{z0.s-z1.s}, za0h.s\[w14, 2:3\]
+.*:	c0c66200 	movaz	{z0.d-z1.d}, za0h.d\[w15, 0:1\]
+.*:	c006c260 	movaz	{z0.b-z1.b}, za0v.b\[w14, 6:7\]
+.*:	c046c2e0 	movaz	{z0.h-z1.h}, za1v.h\[w14, 6:7\]
+.*:	c086c2a0 	movaz	{z0.s-z1.s}, za2v.s\[w14, 2:3\]
+.*:	c0c6c260 	movaz	{z0.d-z1.d}, za3v.d\[w14, 0:1\]
+.*:	c00602e0 	movaz	{z0.b-z1.b}, za0h.b\[w12, 14:15\]
+.*:	c04622e0 	movaz	{z0.h-z1.h}, za1h.h\[w13, 6:7\]
+.*:	c08642a0 	movaz	{z0.s-z1.s}, za2h.s\[w14, 2:3\]
+.*:	c0c66260 	movaz	{z0.d-z1.d}, za3h.d\[w15, 0:1\]
+.*:	c006c660 	movaz	{z0.b-z3.b}, za0v.b\[w14, 12:15\]
+.*:	c046c620 	movaz	{z0.h-z3.h}, za0v.h\[w14, 4:7\]
+.*:	c086c600 	movaz	{z0.s-z3.s}, za0v.s\[w14, 0:3\]
+.*:	c0c6c600 	movaz	{z0.d-z3.d}, za0v.d\[w14, 0:3\]
+.*:	c0060660 	movaz	{z0.b-z3.b}, za0h.b\[w12, 12:15\]
+.*:	c0462620 	movaz	{z0.h-z3.h}, za0h.h\[w13, 4:7\]
+.*:	c0864600 	movaz	{z0.s-z3.s}, za0h.s\[w14, 0:3\]
+.*:	c0c66600 	movaz	{z0.d-z3.d}, za0h.d\[w15, 0:3\]
+.*:	c006c640 	movaz	{z0.b-z3.b}, za0v.b\[w14, 8:11\]
+.*:	c046c660 	movaz	{z0.h-z3.h}, za1v.h\[w14, 4:7\]
+.*:	c086c640 	movaz	{z0.s-z3.s}, za2v.s\[w14, 0:3\]
+.*:	c0c6c660 	movaz	{z0.d-z3.d}, za3v.d\[w14, 0:3\]
+.*:	c0060660 	movaz	{z0.b-z3.b}, za0h.b\[w12, 12:15\]
+.*:	c0462660 	movaz	{z0.h-z3.h}, za1h.h\[w13, 4:7\]
+.*:	c0864640 	movaz	{z0.s-z3.s}, za2h.s\[w14, 0:3\]
+.*:	c0c66660 	movaz	{z0.d-z3.d}, za3h.d\[w15, 0:3\]
diff --git a/gas/testsuite/gas/aarch64/sme2p1-4-bad.l b/gas/testsuite/gas/aarch64/sme2p1-4-bad.l
index fd35f4f2ffe18279c48e70201cfdfb22f0d21c9f..e806dbd840579f95e421d73875b934ffec7760ba 100644
--- a/gas/testsuite/gas/aarch64/sme2p1-4-bad.l
+++ b/gas/testsuite/gas/aarch64/sme2p1-4-bad.l
@@ -1,26 +1,26 @@
 .*: Assembler messages:
 .*: Error: operand mismatch -- `movaz z0.b,za0h.s\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0h.b \[w12, 0\]
+.*: Info:    	movaz z0.b, za0h.b\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z31.d,za0h.b\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z31.b, za0h.b \[w12, 0\]
+.*: Info:    	movaz z31.b, za0h.b\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z0.b,za0v.h\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0v.b \[w12, 0\]
+.*: Info:    	movaz z0.b, za0v.b\[w12, 0\]
 .*: Error: expected a ZA tile slice at operand 2 -- `movaz z0.q,za0vh.b\[w15,0\]'
 .*: Error: operand mismatch -- `movaz z0.s,za0h.b\[w10,15\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0h.b \[w10, 15\]
+.*: Info:    	movaz z0.b, za0h.b\[w10, 15\]
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z31.b,za1v.b\[w25,15\]'
 .*: Error: immediate offset out of range 0 to 15 at operand 2 -- `movaz z15.b,za0h.b\[w13,31\]'
 .*: Error: missing immediate offset at operand 2 -- `movaz z7.h,za0h.b\[w14\]'
 .*: Error: operand mismatch -- `movaz z0.s,za0h.h\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.h, za0h.h \[w12, 0\]
+.*: Info:    	movaz z0.h, za0h.h\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z31.h,za0h.d\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z31.h, za0h.h \[w12, 0\]
+.*: Info:    	movaz z31.h, za0h.h\[w12, 0\]
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z0.h,za1h.b\[w12,0\]'
 .*: Error: expected a ZA tile slice at operand 2 -- `movaz z0.q,za0vh.h\[w12,0\]'
 .*: Error: expected a selection register in the range w12-w15 at operand 2 -- `movaz z0.h,za0h.h\[w17,0\]'
@@ -30,47 +30,47 @@
 .*: Error: missing immediate offset at operand 2 -- `movaz z7.d,za0h.h\[w14\]'
 .*: Error: operand mismatch -- `movaz z0.b,za0h.s\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0h.b \[w12, 0\]
+.*: Info:    	movaz z0.b, za0h.b\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z31.s,za0h.h\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z31.h, za0h.h \[w12, 0\]
+.*: Info:    	movaz z31.h, za0h.h\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z0.s,za3h\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.s, za3h.s \[w12, 0\]
+.*: Info:    	movaz z0.s, za3h.s\[w12, 0\]
 .*: Error: expected a selection register in the range w12-w15 at operand 2 -- `movaz z0.s,za0v.s\[w1,0\]'
 .*: Error: operand mismatch -- `movaz z0.q,za0h.s\[w25,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.s, za0h.s \[w25, 0\]
+.*: Info:    	movaz z0.s, za0h.s\[w25, 0\]
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z31.s,za5v.s\[w15,3\]'
 .*: Error: missing immediate offset at operand 2 -- `movaz z15.s,za1h.s\[w13\]'
 .*: Error: operand mismatch -- `movaz z7.b,za2h.d\[w14,1\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z7.b, za2h.b \[w14, 1\]
+.*: Info:    	movaz z7.b, za2h.b\[w14, 1\]
 .*: Error: operand mismatch -- `movaz z0.b,za0h.d\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0h.b \[w12, 0\]
+.*: Info:    	movaz z0.b, za0h.b\[w12, 0\]
 .*: Error: operand mismatch -- `movaz z31.d,za0h.h\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z31.h, za0h.h \[w12, 0\]
+.*: Info:    	movaz z31.h, za0h.h\[w12, 0\]
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z0.d,za7h.s\[w12,0\]'
 .*: Error: operand mismatch -- `movaz z0.s,za0v.q\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.s, za0v.s \[w12, 0\]
+.*: Info:    	movaz z0.s, za0v.s\[w12, 0\]
 .*: Error: expected a ZA tile slice at operand 2 -- `movaz z0.d,za0vh.d\[w15,0\]'
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z31.d,za11v.d\[w1,1\]'
 .*: Error: expected a selection register in the range w12-w15 at operand 2 -- `movaz z15.d,za3h.d\[w23,0\]'
 .*: Error: missing immediate offset at operand 2 -- `movaz z7.s,za4h.q\[w14\]'
 .*: Error: operand mismatch -- `movaz z0.b,za0h.q\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.b, za0h.b \[w12, 0\]
+.*: Info:    	movaz z0.b, za0h.b\[w12, 0\]
 .*: Error: expected a ZA tile slice at operand 2 -- `movaz z31.q,za0vh.s\[w12,0\]'
 .*: Error: ZA tile number out of range at operand 2 -- `movaz z0.q,za15h.h\[w20,0\]'
 .*: Error: operand mismatch -- `movaz z0.s,za0v.d\[w12,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z0.s, za0v.s \[w12, 0\]
+.*: Info:    	movaz z0.s, za0v.s\[w12, 0\]
 .*: Error: expected a selection register in the range w12-w15 at operand 2 -- `movaz z0.q,za0h.q\[w1,0\]'
 .*: Error: operand mismatch -- `movaz z31.q,za15v\[w15,0\]'
 .*: Info:    did you mean this\?
-.*: Info:    	movaz z31.q, za15v.q \[w15, 0\]
+.*: Info:    	movaz z31.q, za15v.q\[w15, 0\]
 .*: Error: expected a ZA tile slice at operand 2 -- `movaz z5.q,za27.q\[w13,0\]'
 .*: Error: missing immediate offset at operand 2 -- `movaz z7.q,za6h\[w14\]'
diff --git a/gas/testsuite/gas/aarch64/sme2p1-4.d b/gas/testsuite/gas/aarch64/sme2p1-4.d
index add27084245e1628f1c55979523f7b21e6f53c4c..f57ce6f46b4540f19dbd02ca964b8bd8f14ef1b4 100644
--- a/gas/testsuite/gas/aarch64/sme2p1-4.d
+++ b/gas/testsuite/gas/aarch64/sme2p1-4.d
@@ -8,46 +8,46 @@
 [^:]+:
 
 [^:]+:
-.*:	c0020200 	movaz	z0.b, za0h.b \[w12, 0\]
-.*:	c002021f 	movaz	z31.b, za0h.b \[w12, 0\]
-.*:	c0028200 	movaz	z0.b, za0v.b \[w12, 0\]
-.*:	c0026200 	movaz	z0.b, za0h.b \[w15, 0\]
-.*:	c00203e0 	movaz	z0.b, za0h.b \[w12, 15\]
-.*:	c002e3ff 	movaz	z31.b, za0v.b \[w15, 15\]
-.*:	c002226f 	movaz	z15.b, za0h.b \[w13, 3\]
-.*:	c0024227 	movaz	z7.b, za0h.b \[w14, 1\]
-.*:	c0420200 	movaz	z0.h, za0h.h \[w12, 0\]
-.*:	c042021f 	movaz	z31.h, za0h.h \[w12, 0\]
-.*:	c0420300 	movaz	z0.h, za1h.h \[w12, 0\]
-.*:	c0428200 	movaz	z0.h, za0v.h \[w12, 0\]
-.*:	c0426200 	movaz	z0.h, za0h.h \[w15, 0\]
-.*:	c04202e0 	movaz	z0.h, za0h.h \[w12, 7\]
-.*:	c042e3ff 	movaz	z31.h, za1v.h \[w15, 7\]
-.*:	c042226f 	movaz	z15.h, za0h.h \[w13, 3\]
-.*:	c0424227 	movaz	z7.h, za0h.h \[w14, 1\]
-.*:	c0820200 	movaz	z0.s, za0h.s \[w12, 0\]
-.*:	c082021f 	movaz	z31.s, za0h.s \[w12, 0\]
-.*:	c0820380 	movaz	z0.s, za3h.s \[w12, 0\]
-.*:	c0828200 	movaz	z0.s, za0v.s \[w12, 0\]
-.*:	c0826200 	movaz	z0.s, za0h.s \[w15, 0\]
-.*:	c0820260 	movaz	z0.s, za0h.s \[w12, 3\]
-.*:	c082e3ff 	movaz	z31.s, za3v.s \[w15, 3\]
-.*:	c08222cf 	movaz	z15.s, za1h.s \[w13, 2\]
-.*:	c0824327 	movaz	z7.s, za2h.s \[w14, 1\]
-.*:	c0c20200 	movaz	z0.d, za0h.d \[w12, 0\]
-.*:	c0c2021f 	movaz	z31.d, za0h.d \[w12, 0\]
-.*:	c0c203c0 	movaz	z0.d, za7h.d \[w12, 0\]
-.*:	c0c28200 	movaz	z0.d, za0v.d \[w12, 0\]
-.*:	c0c26200 	movaz	z0.d, za0h.d \[w15, 0\]
-.*:	c0c20220 	movaz	z0.d, za0h.d \[w12, 1\]
-.*:	c0c2e3ff 	movaz	z31.d, za7v.d \[w15, 1\]
-.*:	c0c222cf 	movaz	z15.d, za3h.d \[w13, 0\]
-.*:	c0c24327 	movaz	z7.d, za4h.d \[w14, 1\]
-.*:	c0c30200 	movaz	z0.q, za0h.q \[w12, 0\]
-.*:	c0c3021f 	movaz	z31.q, za0h.q \[w12, 0\]
-.*:	c0c303e0 	movaz	z0.q, za15h.q \[w12, 0\]
-.*:	c0c38200 	movaz	z0.q, za0v.q \[w12, 0\]
-.*:	c0c36200 	movaz	z0.q, za0h.q \[w15, 0\]
-.*:	c0c3e3ff 	movaz	z31.q, za15v.q \[w15, 0\]
-.*:	c0c322ef 	movaz	z15.q, za7h.q \[w13, 0\]
-.*:	c0c342c7 	movaz	z7.q, za6h.q \[w14, 0\]
+.*:	c0020200 	movaz	z0.b, za0h.b\[w12, 0\]
+.*:	c002021f 	movaz	z31.b, za0h.b\[w12, 0\]
+.*:	c0028200 	movaz	z0.b, za0v.b\[w12, 0\]
+.*:	c0026200 	movaz	z0.b, za0h.b\[w15, 0\]
+.*:	c00203e0 	movaz	z0.b, za0h.b\[w12, 15\]
+.*:	c002e3ff 	movaz	z31.b, za0v.b\[w15, 15\]
+.*:	c002226f 	movaz	z15.b, za0h.b\[w13, 3\]
+.*:	c0024227 	movaz	z7.b, za0h.b\[w14, 1\]
+.*:	c0420200 	movaz	z0.h, za0h.h\[w12, 0\]
+.*:	c042021f 	movaz	z31.h, za0h.h\[w12, 0\]
+.*:	c0420300 	movaz	z0.h, za1h.h\[w12, 0\]
+.*:	c0428200 	movaz	z0.h, za0v.h\[w12, 0\]
+.*:	c0426200 	movaz	z0.h, za0h.h\[w15, 0\]
+.*:	c04202e0 	movaz	z0.h, za0h.h\[w12, 7\]
+.*:	c042e3ff 	movaz	z31.h, za1v.h\[w15, 7\]
+.*:	c042226f 	movaz	z15.h, za0h.h\[w13, 3\]
+.*:	c0424227 	movaz	z7.h, za0h.h\[w14, 1\]
+.*:	c0820200 	movaz	z0.s, za0h.s\[w12, 0\]
+.*:	c082021f 	movaz	z31.s, za0h.s\[w12, 0\]
+.*:	c0820380 	movaz	z0.s, za3h.s\[w12, 0\]
+.*:	c0828200 	movaz	z0.s, za0v.s\[w12, 0\]
+.*:	c0826200 	movaz	z0.s, za0h.s\[w15, 0\]
+.*:	c0820260 	movaz	z0.s, za0h.s\[w12, 3\]
+.*:	c082e3ff 	movaz	z31.s, za3v.s\[w15, 3\]
+.*:	c08222cf 	movaz	z15.s, za1h.s\[w13, 2\]
+.*:	c0824327 	movaz	z7.s, za2h.s\[w14, 1\]
+.*:	c0c20200 	movaz	z0.d, za0h.d\[w12, 0\]
+.*:	c0c2021f 	movaz	z31.d, za0h.d\[w12, 0\]
+.*:	c0c203c0 	movaz	z0.d, za7h.d\[w12, 0\]
+.*:	c0c28200 	movaz	z0.d, za0v.d\[w12, 0\]
+.*:	c0c26200 	movaz	z0.d, za0h.d\[w15, 0\]
+.*:	c0c20220 	movaz	z0.d, za0h.d\[w12, 1\]
+.*:	c0c2e3ff 	movaz	z31.d, za7v.d\[w15, 1\]
+.*:	c0c222cf 	movaz	z15.d, za3h.d\[w13, 0\]
+.*:	c0c24327 	movaz	z7.d, za4h.d\[w14, 1\]
+.*:	c0c30200 	movaz	z0.q, za0h.q\[w12, 0\]
+.*:	c0c3021f 	movaz	z31.q, za0h.q\[w12, 0\]
+.*:	c0c303e0 	movaz	z0.q, za15h.q\[w12, 0\]
+.*:	c0c38200 	movaz	z0.q, za0v.q\[w12, 0\]
+.*:	c0c36200 	movaz	z0.q, za0h.q\[w15, 0\]
+.*:	c0c3e3ff 	movaz	z31.q, za15v.q\[w15, 0\]
+.*:	c0c322ef 	movaz	z15.q, za7h.q\[w13, 0\]
+.*:	c0c342c7 	movaz	z7.q, za6h.q\[w14, 0\]
diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c
index 1b91f4e071f91a2df83235fd6e5368f1ec9c6d18..ae96d42a7ef9752b18e59f3ecd80d3d92cb1b169 100644
--- a/opcodes/aarch64-opc.c
+++ b/opcodes/aarch64-opc.c
@@ -4507,12 +4507,24 @@ aarch64_print_operand (char *buf, size_t size, bfd_vma pc,
     case AARCH64_OPND_SME_ZA_HV_idx_dest:
     case AARCH64_OPND_SME_ZA_HV_idx_destxN:
     case AARCH64_OPND_SME_ZA_HV_idx_ldstr:
+    case AARCH64_OPND_SME_ZA_array_vrsb_1:
+    case AARCH64_OPND_SME_ZA_array_vrsh_1:
+    case AARCH64_OPND_SME_ZA_array_vrss_1:
+    case AARCH64_OPND_SME_ZA_array_vrsd_1:
+    case AARCH64_OPND_SME_ZA_array_vrsb_2:
+    case AARCH64_OPND_SME_ZA_array_vrsh_2:
+    case AARCH64_OPND_SME_ZA_array_vrss_2:
+    case AARCH64_OPND_SME_ZA_array_vrsd_2:
+    case AARCH64_OPND_SME_ZA_ARRAY4:
       snprintf (buf, size, "%s%s[%s, %s%s%s%s%s]%s",
 		opnd->type == AARCH64_OPND_SME_ZA_HV_idx_ldstr ? "{" : "",
-		style_reg (styler, "za%d%c.%s",
+		style_reg (styler, "za%d%c%s%s",
 			   opnd->indexed_za.regno,
 			   opnd->indexed_za.v == 1 ? 'v' : 'h',
-			   aarch64_get_qualifier_name (opnd->qualifier)),
+			   opnd->qualifier == AARCH64_OPND_QLF_NIL ? "" : ".",
+			   (opnd->qualifier == AARCH64_OPND_QLF_NIL
+			    ? ""
+			    : aarch64_get_qualifier_name (opnd->qualifier))),
 		style_reg (styler, "w%d", opnd->indexed_za.index.regno),
 		style_imm (styler, "%" PRIi64, opnd->indexed_za.index.imm),
 		opnd->indexed_za.index.countm1 ? ":" : "",
@@ -4561,31 +4573,6 @@ aarch64_print_operand (char *buf, size_t size, bfd_vma pc,
 		? style_sub_mnem (styler, "vgx4") : "");
       break;
 
-    case AARCH64_OPND_SME_ZA_array_vrsb_1:
-    case AARCH64_OPND_SME_ZA_array_vrsh_1:
-    case AARCH64_OPND_SME_ZA_array_vrss_1:
-    case AARCH64_OPND_SME_ZA_array_vrsd_1:
-    case AARCH64_OPND_SME_ZA_array_vrsb_2:
-    case AARCH64_OPND_SME_ZA_array_vrsh_2:
-    case AARCH64_OPND_SME_ZA_array_vrss_2:
-    case AARCH64_OPND_SME_ZA_array_vrsd_2:
-    case AARCH64_OPND_SME_ZA_ARRAY4:
-      snprintf (buf, size, "%s [%s, %s%s%s]",
-		style_reg (styler, "za%d%c%s%s",
-			   opnd->indexed_za.regno,
-			   opnd->indexed_za.v ? 'v': 'h',
-			   opnd->qualifier == AARCH64_OPND_QLF_NIL ? "" : ".",
-			   (opnd->qualifier == AARCH64_OPND_QLF_NIL
-			    ? ""
-			    : aarch64_get_qualifier_name (opnd->qualifier))),
-		style_reg (styler, "w%d", opnd->indexed_za.index.regno),
-		style_imm (styler, "%" PRIi64, opnd->indexed_za.index.imm),
-		opnd->indexed_za.index.countm1 ? ":" : "",
-		opnd->indexed_za.index.countm1  ? style_imm (styler, "%d",
-		opnd->indexed_za.index.imm
-		+ opnd->indexed_za.index.countm1):"");
-      break;
-
     case AARCH64_OPND_SME_SM_ZA:
       snprintf (buf, size, "%s",
 		style_reg (styler, opnd->reg.regno == 's' ? "sm" : "za"));


More information about the Binutils mailing list