{"sme-b16b16", AARCH64_FEATURE (SME_B16B16),
AARCH64_FEATURES (2, SVE_B16B16, SME2)},
{"pops", AARCH64_FEATURE (PoPS), AARCH64_NO_FEATURES},
+ {"sve2p2", AARCH64_FEATURE (SVE2p2), AARCH64_FEATURE (SVE2)},
+ {"sme2p2", AARCH64_FEATURE (SME2p2), AARCH64_FEATURE (SME2)},
{NULL, AARCH64_NO_FEATURES, AARCH64_NO_FEATURES},
};
{AARCH64_FEATURE (SSVE_FP8DOT2), AARCH64_FEATURE (FP8DOT2_SVE)},
{AARCH64_FEATURE (SME_F16F16), AARCH64_FEATURE (SME_F16F16_F8F16)},
{AARCH64_FEATURE (SME_F8F16), AARCH64_FEATURE (SME_F16F16_F8F16)},
+ {AARCH64_FEATURE (SVE), AARCH64_FEATURE (SVE_SME2p2)},
{AARCH64_FEATURE (SME), AARCH64_FEATURE (SVE2p1_SME)},
{AARCH64_FEATURE (SVE2), AARCH64_FEATURE (SVE2_SME2)},
{AARCH64_FEATURE (SME2), AARCH64_FEATURES (2, SVE2_SME2, SVE2p1_SME2)},
{AARCH64_FEATURE (SVE2p1), AARCH64_FEATURES (3, SVE2p1_SME, SVE2p1_SME2,
SVE2p1_SME2p1)},
{AARCH64_FEATURE (SME2p1), AARCH64_FEATURE (SVE2p1_SME2p1)},
+ {AARCH64_FEATURE (SVE2p2), AARCH64_FEATURE (SVE2p2_SME2p2)},
+ {AARCH64_FEATURE (SME2p2), AARCH64_FEATURES (2, SVE_SME2p2, SVE2p2_SME2p2)},
};
static aarch64_feature_set
@tab Enable SME2.
@item @code{sme2p1} @tab @code{sme2}
@tab Enable SME2.1.
+@item @code{sme2p2} @tab @code{sme2p1}
+ @tab Enable SME2.2.
@item @code{ssbs} @tab
@tab Enable Speculative Store Bypassing Safe state read and write.
@item @code{ssve-fp8dot2} @tab @code{sme2}, @code{fp8}
@tab Enable the SVE2 SM4 Extension.
@item @code{sve2p1} @tab @code{sve2}
@tab Enable SVE2.1.
+@item @code{sve2p2} @tab @code{sve2p1}
+ @tab Enable SVE2.2.
@item @code{the} @tab
@tab Enable the Translation Hardening Extension.
@item @code{tme} @tab
[^ :]+:[0-9]+: Error: operand mismatch -- `bfmmla z0\.s,z1\.h,z2\.s'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: bfmmla z0\.s, z1\.h, z2\.h
-[^ :]+:[0-9]+: Error: operand mismatch -- `bfcvt z0\.h,p1/z,z2\.s'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: bfcvt z0\.h, p1/m, z2\.s
+[^ :]+:[0-9]+: Error: selected processor does not support `bfcvt z0\.h,p1/z,z2\.s'
[^ :]+:[0-9]+: Error: operand mismatch -- `bfcvt z0\.h,p1/m,z2\.h'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: bfcvt z0\.h, p1/m, z2\.s
-[^ :]+:[0-9]+: Error: operand mismatch -- `bfcvtnt z0\.h,p1/z,z2\.s'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: bfcvtnt z0\.h, p1/m, z2\.s
+[^ :]+:[0-9]+: Error: selected processor does not support `bfcvtnt z0\.h,p1/z,z2\.s'
[^ :]+:[0-9]+: Error: operand mismatch -- `bfcvtnt z0\.h,p1/m,z2\.h'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: bfcvtnt z0\.h, p1/m, z2\.s
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtlt z0\.s,p0/m,z0\.s'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtlt z0\.d, p0/m, z0\.s
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtlt z0\.s,p0/z,z0\.h'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtlt z0\.s, p0/m, z0\.h
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtlt z0\.s,p0/z,z0\.h'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `fcvtlt z32\.d,p0/m,z0\.s'
[^ :]+:[0-9]+: Error: p0-p7 expected at operand 2 -- `fcvtlt z0\.d,p8/m,z0\.s'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 3 -- `fcvtlt z0\.d,p0/m,z32\.s'
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtlt z0\.d,p0/m,z0\.d'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtlt z0\.d, p0/m, z0\.s
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtlt z0\.d,p0/z,z0\.s'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtlt z0\.d, p0/m, z0\.s
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtlt z0\.d,p0/z,z0\.s'
[^ :]+:[0-9]+: Warning: SVE `movprfx' compatible instruction expected -- `fcvtnt z0\.h,p0/m,z0\.s'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `fcvtnt z32\.h,p0/m,z0\.s'
[^ :]+:[0-9]+: Error: p0-p7 expected at operand 2 -- `fcvtnt z0\.h,p8/m,z0\.s'
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtnt z0\.h,p0/m,z0\.h'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtnt z0\.h, p0/m, z0\.s
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtnt z0\.h,p0/z,z0\.s'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtnt z0\.h, p0/m, z0\.s
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtnt z0\.h,p0/z,z0\.s'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `fcvtnt z32\.s,p0/m,z0\.d'
[^ :]+:[0-9]+: Error: p0-p7 expected at operand 2 -- `fcvtnt z0\.s,p8/m,z0\.d'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 3 -- `fcvtnt z0\.s,p0/m,z32\.d'
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtnt z0\.s,p0/m,z0\.s'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtnt z0\.s, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtnt z0\.s,p0/z,z0\.d'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtnt z0\.s, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtnt z0\.s,p0/z,z0\.d'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `fcvtx z32\.s,p0/m,z0\.d'
[^ :]+:[0-9]+: Error: p0-p7 expected at operand 2 -- `fcvtx z0\.s,p8/m,z0\.d'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 3 -- `fcvtx z0\.s,p0/m,z32\.d'
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtx z0\.s,p0/m,z0\.s'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtx z0\.s, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtx z0\.s,p0/z,z0\.d'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtx z0\.s, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtx z0\.s,p0/z,z0\.d'
[^ :]+:[0-9]+: Warning: register size not compatible with previous `movprfx' at operand 1 -- `fcvtx z0\.s,p0/m,z2\.d'
[^ :]+:[0-9]+: Warning: SVE `movprfx' compatible instruction expected -- `fcvtxnt z0\.s,p0/m,z0\.d'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `fcvtxnt z32\.s,p0/m,z0\.d'
[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtxnt z0\.s,p0/m,z0\.s'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: fcvtxnt z0\.s, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtxnt z0\.s,p0/z,z0\.d'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: fcvtxnt z0\.s, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtxnt z0\.s,p0/z,z0\.d'
[^ :]+:[0-9]+: Error: operand mismatch -- `flogb z0\.b,p0/m,z0\.b'
[^ :]+:[0-9]+: Info: did you mean this\?
[^ :]+:[0-9]+: Info: flogb z0\.h, p0/m, z0\.h
[^ :]+:[0-9]+: Info: other valid variant\(s\):
[^ :]+:[0-9]+: Info: flogb z0\.s, p0/m, z0\.s
[^ :]+:[0-9]+: Info: flogb z0\.d, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `flogb z0\.h,p0/z,z0\.h'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: flogb z0\.h, p0/m, z0\.h
-[^ :]+:[0-9]+: Info: other valid variant\(s\):
-[^ :]+:[0-9]+: Info: flogb z0\.s, p0/m, z0\.s
-[^ :]+:[0-9]+: Info: flogb z0\.d, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `flogb z0\.h,p0/z,z0\.h'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `flogb z32\.h,p0/m,z0\.h'
[^ :]+:[0-9]+: Error: p0-p7 expected at operand 2 -- `flogb z0\.h,p8/m,z0\.h'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 3 -- `flogb z0\.h,p0/m,z32\.h'
[^ :]+:[0-9]+: Info: sqabs z0\.h, p0/m, z0\.h
[^ :]+:[0-9]+: Info: sqabs z0\.s, p0/m, z0\.s
[^ :]+:[0-9]+: Info: sqabs z0\.d, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `sqabs z0\.b,p0/z,z0\.b'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: sqabs z0\.b, p0/m, z0\.b
-[^ :]+:[0-9]+: Info: other valid variant\(s\):
-[^ :]+:[0-9]+: Info: sqabs z0\.h, p0/m, z0\.h
-[^ :]+:[0-9]+: Info: sqabs z0\.s, p0/m, z0\.s
-[^ :]+:[0-9]+: Info: sqabs z0\.d, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `sqabs z0\.b,p0/z,z0\.b'
[^ :]+:[0-9]+: Error: expected a register at operand 1 -- `sqadd z32\.b,p0/m,z0\.b,z0\.b'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 3 -- `sqadd z0\.b,p0/m,z32\.b,z0\.b'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 4 -- `sqadd z0\.b,p0/m,z0\.b,z32\.b'
[^ :]+:[0-9]+: Info: sqneg z0\.h, p0/m, z0\.h
[^ :]+:[0-9]+: Info: sqneg z0\.s, p0/m, z0\.s
[^ :]+:[0-9]+: Info: sqneg z0\.d, p0/m, z0\.d
-[^ :]+:[0-9]+: Error: operand mismatch -- `sqneg z0\.b,p0/z,z0\.b'
-[^ :]+:[0-9]+: Info: did you mean this\?
-[^ :]+:[0-9]+: Info: sqneg z0\.b, p0/m, z0\.b
-[^ :]+:[0-9]+: Info: other valid variant\(s\):
-[^ :]+:[0-9]+: Info: sqneg z0\.h, p0/m, z0\.h
-[^ :]+:[0-9]+: Info: sqneg z0\.s, p0/m, z0\.s
-[^ :]+:[0-9]+: Info: sqneg z0\.d, p0/m, z0\.d
+[^ :]+:[0-9]+: Error: selected processor does not support `sqneg z0\.b,p0/z,z0\.b'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 1 -- `sqrdcmlah z32\.h,z0\.h,z0\.h\[0\],#0'
[^ :]+:[0-9]+: Error: expected an SVE vector register at operand 2 -- `sqrdcmlah z0\.h,z32\.h,z0\.h\[0\],#0'
[^ :]+:[0-9]+: Error: z0-z7 expected at operand 3 -- `sqrdcmlah z0\.h,z0\.h,z8\.h\[0\],#0'
--- /dev/null
+#as: -march=armv8-a+sme2p2
+#objdump: -dr
+
+.*: file format .*
+
+
+Disassembly of section \.text:
+
+0+ <\.text>:
+ *[0-9a-f]+: c160e800 fmul {z0\.h-z1\.h}, {z0\.h-z1\.h}, z0\.h
+ *[0-9a-f]+: c160e81e fmul {z30\.h-z31\.h}, {z0\.h-z1\.h}, z0\.h
+ *[0-9a-f]+: c160ebc0 fmul {z0\.h-z1\.h}, {z30\.h-z31\.h}, z0\.h
+ *[0-9a-f]+: c17ee800 fmul {z0\.h-z1\.h}, {z0\.h-z1\.h}, z15\.h
+ *[0-9a-f]+: c1a0e800 fmul {z0\.s-z1\.s}, {z0\.s-z1\.s}, z0\.s
+ *[0-9a-f]+: c1a0e81e fmul {z30\.s-z31\.s}, {z0\.s-z1\.s}, z0\.s
+ *[0-9a-f]+: c1a0ebc0 fmul {z0\.s-z1\.s}, {z30\.s-z31\.s}, z0\.s
+ *[0-9a-f]+: c1bee800 fmul {z0\.s-z1\.s}, {z0\.s-z1\.s}, z15\.s
+ *[0-9a-f]+: c1e0e800 fmul {z0\.d-z1\.d}, {z0\.d-z1\.d}, z0\.d
+ *[0-9a-f]+: c1e0e81e fmul {z30\.d-z31\.d}, {z0\.d-z1\.d}, z0\.d
+ *[0-9a-f]+: c1e0ebc0 fmul {z0\.d-z1\.d}, {z30\.d-z31\.d}, z0\.d
+ *[0-9a-f]+: c1fee800 fmul {z0\.d-z1\.d}, {z0\.d-z1\.d}, z15\.d
+ *[0-9a-f]+: c161e800 fmul {z0\.h-z3\.h}, {z0\.h-z3\.h}, z0\.h
+ *[0-9a-f]+: c161e81c fmul {z28\.h-z31\.h}, {z0\.h-z3\.h}, z0\.h
+ *[0-9a-f]+: c161eb80 fmul {z0\.h-z3\.h}, {z28\.h-z31\.h}, z0\.h
+ *[0-9a-f]+: c17fe800 fmul {z0\.h-z3\.h}, {z0\.h-z3\.h}, z15\.h
+ *[0-9a-f]+: c1a1e800 fmul {z0\.s-z3\.s}, {z0\.s-z3\.s}, z0\.s
+ *[0-9a-f]+: c1a1e81c fmul {z28\.s-z31\.s}, {z0\.s-z3\.s}, z0\.s
+ *[0-9a-f]+: c1a1eb80 fmul {z0\.s-z3\.s}, {z28\.s-z31\.s}, z0\.s
+ *[0-9a-f]+: c1bfe800 fmul {z0\.s-z3\.s}, {z0\.s-z3\.s}, z15\.s
+ *[0-9a-f]+: c1e1e800 fmul {z0\.d-z3\.d}, {z0\.d-z3\.d}, z0\.d
+ *[0-9a-f]+: c1e1e81c fmul {z28\.d-z31\.d}, {z0\.d-z3\.d}, z0\.d
+ *[0-9a-f]+: c1e1eb80 fmul {z0\.d-z3\.d}, {z28\.d-z31\.d}, z0\.d
+ *[0-9a-f]+: c1ffe800 fmul {z0\.d-z3\.d}, {z0\.d-z3\.d}, z15\.d
+ *[0-9a-f]+: c160e400 fmul {z0\.h-z1\.h}, {z0\.h-z1\.h}, {z0\.h-z1\.h}
+ *[0-9a-f]+: c160e41e fmul {z30\.h-z31\.h}, {z0\.h-z1\.h}, {z0\.h-z1\.h}
+ *[0-9a-f]+: c160e7c0 fmul {z0\.h-z1\.h}, {z30\.h-z31\.h}, {z0\.h-z1\.h}
+ *[0-9a-f]+: c17ee400 fmul {z0\.h-z1\.h}, {z0\.h-z1\.h}, {z30\.h-z31\.h}
+ *[0-9a-f]+: c1a0e400 fmul {z0\.s-z1\.s}, {z0\.s-z1\.s}, {z0\.s-z1\.s}
+ *[0-9a-f]+: c1a0e41e fmul {z30\.s-z31\.s}, {z0\.s-z1\.s}, {z0\.s-z1\.s}
+ *[0-9a-f]+: c1a0e7c0 fmul {z0\.s-z1\.s}, {z30\.s-z31\.s}, {z0\.s-z1\.s}
+ *[0-9a-f]+: c1bee400 fmul {z0\.s-z1\.s}, {z0\.s-z1\.s}, {z30\.s-z31\.s}
+ *[0-9a-f]+: c1e0e400 fmul {z0\.d-z1\.d}, {z0\.d-z1\.d}, {z0\.d-z1\.d}
+ *[0-9a-f]+: c1e0e41e fmul {z30\.d-z31\.d}, {z0\.d-z1\.d}, {z0\.d-z1\.d}
+ *[0-9a-f]+: c1e0e7c0 fmul {z0\.d-z1\.d}, {z30\.d-z31\.d}, {z0\.d-z1\.d}
+ *[0-9a-f]+: c1fee400 fmul {z0\.d-z1\.d}, {z0\.d-z1\.d}, {z30\.d-z31\.d}
+ *[0-9a-f]+: c161e400 fmul {z0\.h-z3\.h}, {z0\.h-z3\.h}, {z0\.h-z3\.h}
+ *[0-9a-f]+: c161e41c fmul {z28\.h-z31\.h}, {z0\.h-z3\.h}, {z0\.h-z3\.h}
+ *[0-9a-f]+: c161e780 fmul {z0\.h-z3\.h}, {z28\.h-z31\.h}, {z0\.h-z3\.h}
+ *[0-9a-f]+: c17de400 fmul {z0\.h-z3\.h}, {z0\.h-z3\.h}, {z28\.h-z31\.h}
+ *[0-9a-f]+: c1a1e400 fmul {z0\.s-z3\.s}, {z0\.s-z3\.s}, {z0\.s-z3\.s}
+ *[0-9a-f]+: c1a1e41c fmul {z28\.s-z31\.s}, {z0\.s-z3\.s}, {z0\.s-z3\.s}
+ *[0-9a-f]+: c1a1e780 fmul {z0\.s-z3\.s}, {z28\.s-z31\.s}, {z0\.s-z3\.s}
+ *[0-9a-f]+: c1bde400 fmul {z0\.s-z3\.s}, {z0\.s-z3\.s}, {z28\.s-z31\.s}
+ *[0-9a-f]+: c1e1e400 fmul {z0\.d-z3\.d}, {z0\.d-z3\.d}, {z0\.d-z3\.d}
+ *[0-9a-f]+: c1e1e41c fmul {z28\.d-z31\.d}, {z0\.d-z3\.d}, {z0\.d-z3\.d}
+ *[0-9a-f]+: c1e1e780 fmul {z0\.d-z3\.d}, {z28\.d-z31\.d}, {z0\.d-z3\.d}
+ *[0-9a-f]+: c1fde400 fmul {z0\.d-z3\.d}, {z0\.d-z3\.d}, {z28\.d-z31\.d}
--- /dev/null
+ fmul {z0.h-z1.h}, {z0.h-z1.h}, z0.h
+ fmul {z30.h-z31.h}, {z0.h-z1.h}, z0.h
+ fmul {z0.h-z1.h}, {z30.h-z31.h}, z0.h
+ fmul {z0.h-z1.h}, {z0.h-z1.h}, z15.h
+ fmul {z0.s-z1.s}, {z0.s-z1.s}, z0.s
+ fmul {z30.s-z31.s}, {z0.s-z1.s}, z0.s
+ fmul {z0.s-z1.s}, {z30.s-z31.s}, z0.s
+ fmul {z0.s-z1.s}, {z0.s-z1.s}, z15.s
+ fmul {z0.d-z1.d}, {z0.d-z1.d}, z0.d
+ fmul {z30.d-z31.d}, {z0.d-z1.d}, z0.d
+ fmul {z0.d-z1.d}, {z30.d-z31.d}, z0.d
+ fmul {z0.d-z1.d}, {z0.d-z1.d}, z15.d
+ fmul {z0.h-z3.h}, {z0.h-z3.h}, z0.h
+ fmul {z28.h-z31.h}, {z0.h-z3.h}, z0.h
+ fmul {z0.h-z3.h}, {z28.h-z31.h}, z0.h
+ fmul {z0.h-z3.h}, {z0.h-z3.h}, z15.h
+ fmul {z0.s-z3.s}, {z0.s-z3.s}, z0.s
+ fmul {z28.s-z31.s}, {z0.s-z3.s}, z0.s
+ fmul {z0.s-z3.s}, {z28.s-z31.s}, z0.s
+ fmul {z0.s-z3.s}, {z0.s-z3.s}, z15.s
+ fmul {z0.d-z3.d}, {z0.d-z3.d}, z0.d
+ fmul {z28.d-z31.d}, {z0.d-z3.d}, z0.d
+ fmul {z0.d-z3.d}, {z28.d-z31.d}, z0.d
+ fmul {z0.d-z3.d}, {z0.d-z3.d}, z15.d
+
+ fmul {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z1.h}
+ fmul {z30.h-z31.h}, {z0.h-z1.h}, {z0.h-z1.h}
+ fmul {z0.h-z1.h}, {z30.h-z31.h}, {z0.h-z1.h}
+ fmul {z0.h-z1.h}, {z0.h-z1.h}, {z30.h-z31.h}
+ fmul {z0.s-z1.s}, {z0.s-z1.s}, {z0.s-z1.s}
+ fmul {z30.s-z31.s}, {z0.s-z1.s}, {z0.s-z1.s}
+ fmul {z0.s-z1.s}, {z30.s-z31.s}, {z0.s-z1.s}
+ fmul {z0.s-z1.s}, {z0.s-z1.s}, {z30.s-z31.s}
+ fmul {z0.d-z1.d}, {z0.d-z1.d}, {z0.d-z1.d}
+ fmul {z30.d-z31.d}, {z0.d-z1.d}, {z0.d-z1.d}
+ fmul {z0.d-z1.d}, {z30.d-z31.d}, {z0.d-z1.d}
+ fmul {z0.d-z1.d}, {z0.d-z1.d}, {z30.d-z31.d}
+ fmul {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h}
+ fmul {z28.h-z31.h}, {z0.h-z3.h}, {z0.h-z3.h}
+ fmul {z0.h-z3.h}, {z28.h-z31.h}, {z0.h-z3.h}
+ fmul {z0.h-z3.h}, {z0.h-z3.h}, {z28.h-z31.h}
+ fmul {z0.s-z3.s}, {z0.s-z3.s}, {z0.s-z3.s}
+ fmul {z28.s-z31.s}, {z0.s-z3.s}, {z0.s-z3.s}
+ fmul {z0.s-z3.s}, {z28.s-z31.s}, {z0.s-z3.s}
+ fmul {z0.s-z3.s}, {z0.s-z3.s}, {z28.s-z31.s}
+ fmul {z0.d-z3.d}, {z0.d-z3.d}, {z0.d-z3.d}
+ fmul {z28.d-z31.d}, {z0.d-z3.d}, {z0.d-z3.d}
+ fmul {z0.d-z3.d}, {z28.d-z31.d}, {z0.d-z3.d}
+ fmul {z0.d-z3.d}, {z0.d-z3.d}, {z28.d-z31.d}
+
--- /dev/null
+#as: -march=armv8-a+sve2p2
+#as: -march=armv8-a+sme2p2
+#objdump: -dr
+
+.*: file format .*
+
+
+Disassembly of section \.text:
+
+0+ <\.text>:
+ *[0-9a-f]+: 0406a000 abs z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0406a01f abs z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0406bc00 abs z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 0406a3e0 abs z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 0446a000 abs z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0446a01f abs z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0446bc00 abs z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0446a3e0 abs z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0486a000 abs z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0486a01f abs z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0486bc00 abs z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0486a3e0 abs z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c6a000 abs z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c6a01f abs z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c6bc00 abs z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c6a3e0 abs z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 649ac000 bfcvt z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 649ac01f bfcvt z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 649adc00 bfcvt z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 649ac3e0 bfcvt z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 6482a000 bfcvtnt z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 6482a01f bfcvtnt z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 6482bc00 bfcvtnt z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 6482a3e0 bfcvtnt z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 0408a000 cls z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0408a01f cls z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0408bc00 cls z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 0408a3e0 cls z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 0448a000 cls z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0448a01f cls z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0448bc00 cls z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0448a3e0 cls z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0488a000 cls z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0488a01f cls z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0488bc00 cls z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0488a3e0 cls z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c8a000 cls z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c8a01f cls z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c8bc00 cls z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c8a3e0 cls z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0409a000 clz z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0409a01f clz z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0409bc00 clz z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 0409a3e0 clz z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 0449a000 clz z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0449a01f clz z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0449bc00 clz z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0449a3e0 clz z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0489a000 clz z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0489a01f clz z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0489bc00 clz z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0489a3e0 clz z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c9a000 clz z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c9a01f clz z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c9bc00 clz z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c9a3e0 clz z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 040ba000 cnot z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040ba01f cnot z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040bbc00 cnot z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 040ba3e0 cnot z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 044ba000 cnot z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044ba01f cnot z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044bbc00 cnot z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 044ba3e0 cnot z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 048ba000 cnot z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048ba01f cnot z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048bbc00 cnot z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 048ba3e0 cnot z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04cba000 cnot z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cba01f cnot z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cbbc00 cnot z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04cba3e0 cnot z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 040aa000 cnt z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040aa01f cnt z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040abc00 cnt z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 040aa3e0 cnt z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 044aa000 cnt z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044aa01f cnt z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044abc00 cnt z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 044aa3e0 cnt z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 048aa000 cnt z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048aa01f cnt z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048abc00 cnt z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 048aa3e0 cnt z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04caa000 cnt z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04caa01f cnt z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cabc00 cnt z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04caa3e0 cnt z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 05218000 compact z0\.b, p0, z0\.b
+ *[0-9a-f]+: 0521801f compact z31\.b, p0, z0\.b
+ *[0-9a-f]+: 05219c00 compact z0\.b, p7, z0\.b
+ *[0-9a-f]+: 052183e0 compact z0\.b, p0, z31\.b
+ *[0-9a-f]+: 05618000 compact z0\.h, p0, z0\.h
+ *[0-9a-f]+: 0561801f compact z31\.h, p0, z0\.h
+ *[0-9a-f]+: 05619c00 compact z0\.h, p7, z0\.h
+ *[0-9a-f]+: 056183e0 compact z0\.h, p0, z31\.h
+ *[0-9a-f]+: 05a18000 compact z0\.s, p0, z0\.s
+ *[0-9a-f]+: 05a1801f compact z31\.s, p0, z0\.s
+ *[0-9a-f]+: 05a19c00 compact z0\.s, p7, z0\.s
+ *[0-9a-f]+: 05a183e0 compact z0\.s, p0, z31\.s
+ *[0-9a-f]+: 05e18000 compact z0\.d, p0, z0\.d
+ *[0-9a-f]+: 05e1801f compact z31\.d, p0, z0\.d
+ *[0-9a-f]+: 05e19c00 compact z0\.d, p7, z0\.d
+ *[0-9a-f]+: 05e183e0 compact z0\.d, p0, z31\.d
+ *[0-9a-f]+: 05318000 expand z0\.b, p0, z0\.b
+ *[0-9a-f]+: 0531801f expand z31\.b, p0, z0\.b
+ *[0-9a-f]+: 05319c00 expand z0\.b, p7, z0\.b
+ *[0-9a-f]+: 053183e0 expand z0\.b, p0, z31\.b
+ *[0-9a-f]+: 05718000 expand z0\.h, p0, z0\.h
+ *[0-9a-f]+: 0571801f expand z31\.h, p0, z0\.h
+ *[0-9a-f]+: 05719c00 expand z0\.h, p7, z0\.h
+ *[0-9a-f]+: 057183e0 expand z0\.h, p0, z31\.h
+ *[0-9a-f]+: 05b18000 expand z0\.s, p0, z0\.s
+ *[0-9a-f]+: 05b1801f expand z31\.s, p0, z0\.s
+ *[0-9a-f]+: 05b19c00 expand z0\.s, p7, z0\.s
+ *[0-9a-f]+: 05b183e0 expand z0\.s, p0, z31\.s
+ *[0-9a-f]+: 05f18000 expand z0\.d, p0, z0\.d
+ *[0-9a-f]+: 05f1801f expand z31\.d, p0, z0\.d
+ *[0-9a-f]+: 05f19c00 expand z0\.d, p7, z0\.d
+ *[0-9a-f]+: 05f183e0 expand z0\.d, p0, z31\.d
+ *[0-9a-f]+: 044ca000 fabs z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044ca01f fabs z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044cbc00 fabs z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 044ca3e0 fabs z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 048ca000 fabs z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048ca01f fabs z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048cbc00 fabs z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 048ca3e0 fabs z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04cca000 fabs z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cca01f fabs z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04ccbc00 fabs z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04cca3e0 fabs z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 649aa000 fcvt z0\.s, p0/z, z0\.h
+ *[0-9a-f]+: 649aa01f fcvt z31\.s, p0/z, z0\.h
+ *[0-9a-f]+: 649abc00 fcvt z0\.s, p7/z, z0\.h
+ *[0-9a-f]+: 649aa3e0 fcvt z0\.s, p0/z, z31\.h
+ *[0-9a-f]+: 64daa000 fcvt z0\.d, p0/z, z0\.h
+ *[0-9a-f]+: 64daa01f fcvt z31\.d, p0/z, z0\.h
+ *[0-9a-f]+: 64dabc00 fcvt z0\.d, p7/z, z0\.h
+ *[0-9a-f]+: 64daa3e0 fcvt z0\.d, p0/z, z31\.h
+ *[0-9a-f]+: 649a8000 fcvt z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 649a801f fcvt z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 649a9c00 fcvt z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 649a83e0 fcvt z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 64dae000 fcvt z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dae01f fcvt z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dafc00 fcvt z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64dae3e0 fcvt z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 64da8000 fcvt z0\.h, p0/z, z0\.d
+ *[0-9a-f]+: 64da801f fcvt z31\.h, p0/z, z0\.d
+ *[0-9a-f]+: 64da9c00 fcvt z0\.h, p7/z, z0\.d
+ *[0-9a-f]+: 64da83e0 fcvt z0\.h, p0/z, z31\.d
+ *[0-9a-f]+: 64dac000 fcvt z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dac01f fcvt z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dadc00 fcvt z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64dac3e0 fcvt z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 6481a000 fcvtlt z0\.s, p0/z, z0\.h
+ *[0-9a-f]+: 6481a01f fcvtlt z31\.s, p0/z, z0\.h
+ *[0-9a-f]+: 6481bc00 fcvtlt z0\.s, p7/z, z0\.h
+ *[0-9a-f]+: 6481a3e0 fcvtlt z0\.s, p0/z, z31\.h
+ *[0-9a-f]+: 64c3a000 fcvtlt z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64c3a01f fcvtlt z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64c3bc00 fcvtlt z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64c3a3e0 fcvtlt z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 6480a000 fcvtnt z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 6480a01f fcvtnt z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 6480bc00 fcvtnt z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 6480a3e0 fcvtnt z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 64c2a000 fcvtnt z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64c2a01f fcvtnt z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64c2bc00 fcvtnt z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64c2a3e0 fcvtnt z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 641ac000 fcvtx z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 641ac01f fcvtx z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 641adc00 fcvtx z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 641ac3e0 fcvtx z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 6402a000 fcvtxnt z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 6402a01f fcvtxnt z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 6402bc00 fcvtxnt z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 6402a3e0 fcvtxnt z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 645ec000 fcvtzs z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645ec01f fcvtzs z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645edc00 fcvtzs z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645ec3e0 fcvtzs z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 645f8000 fcvtzs z0\.s, p0/z, z0\.h
+ *[0-9a-f]+: 645f801f fcvtzs z31\.s, p0/z, z0\.h
+ *[0-9a-f]+: 645f9c00 fcvtzs z0\.s, p7/z, z0\.h
+ *[0-9a-f]+: 645f83e0 fcvtzs z0\.s, p0/z, z31\.h
+ *[0-9a-f]+: 645fc000 fcvtzs z0\.d, p0/z, z0\.h
+ *[0-9a-f]+: 645fc01f fcvtzs z31\.d, p0/z, z0\.h
+ *[0-9a-f]+: 645fdc00 fcvtzs z0\.d, p7/z, z0\.h
+ *[0-9a-f]+: 645fc3e0 fcvtzs z0\.d, p0/z, z31\.h
+ *[0-9a-f]+: 649f8000 fcvtzs z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649f801f fcvtzs z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649f9c00 fcvtzs z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649f83e0 fcvtzs z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64df8000 fcvtzs z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64df801f fcvtzs z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64df9c00 fcvtzs z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64df83e0 fcvtzs z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 64de8000 fcvtzs z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64de801f fcvtzs z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64de9c00 fcvtzs z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64de83e0 fcvtzs z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 64dfc000 fcvtzs z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dfc01f fcvtzs z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dfdc00 fcvtzs z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64dfc3e0 fcvtzs z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 645ee000 fcvtzu z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645ee01f fcvtzu z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645efc00 fcvtzu z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645ee3e0 fcvtzu z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 645fa000 fcvtzu z0\.s, p0/z, z0\.h
+ *[0-9a-f]+: 645fa01f fcvtzu z31\.s, p0/z, z0\.h
+ *[0-9a-f]+: 645fbc00 fcvtzu z0\.s, p7/z, z0\.h
+ *[0-9a-f]+: 645fa3e0 fcvtzu z0\.s, p0/z, z31\.h
+ *[0-9a-f]+: 645fe000 fcvtzu z0\.d, p0/z, z0\.h
+ *[0-9a-f]+: 645fe01f fcvtzu z31\.d, p0/z, z0\.h
+ *[0-9a-f]+: 645ffc00 fcvtzu z0\.d, p7/z, z0\.h
+ *[0-9a-f]+: 645fe3e0 fcvtzu z0\.d, p0/z, z31\.h
+ *[0-9a-f]+: 649fa000 fcvtzu z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649fa01f fcvtzu z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649fbc00 fcvtzu z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649fa3e0 fcvtzu z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64dfa000 fcvtzu z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dfa01f fcvtzu z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dfbc00 fcvtzu z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64dfa3e0 fcvtzu z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 64dea000 fcvtzu z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dea01f fcvtzu z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64debc00 fcvtzu z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64dea3e0 fcvtzu z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 64dfe000 fcvtzu z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dfe01f fcvtzu z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dffc00 fcvtzu z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64dfe3e0 fcvtzu z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 25218000 firstp x0, p0, p0\.b
+ *[0-9a-f]+: 2521801f firstp xzr, p0, p0\.b
+ *[0-9a-f]+: 2521bc00 firstp x0, p15, p0\.b
+ *[0-9a-f]+: 252181e0 firstp x0, p0, p15\.b
+ *[0-9a-f]+: 25618000 firstp x0, p0, p0\.h
+ *[0-9a-f]+: 2561801f firstp xzr, p0, p0\.h
+ *[0-9a-f]+: 2561bc00 firstp x0, p15, p0\.h
+ *[0-9a-f]+: 256181e0 firstp x0, p0, p15\.h
+ *[0-9a-f]+: 25a18000 firstp x0, p0, p0\.s
+ *[0-9a-f]+: 25a1801f firstp xzr, p0, p0\.s
+ *[0-9a-f]+: 25a1bc00 firstp x0, p15, p0\.s
+ *[0-9a-f]+: 25a181e0 firstp x0, p0, p15\.s
+ *[0-9a-f]+: 25e18000 firstp x0, p0, p0\.d
+ *[0-9a-f]+: 25e1801f firstp xzr, p0, p0\.d
+ *[0-9a-f]+: 25e1bc00 firstp x0, p15, p0\.d
+ *[0-9a-f]+: 25e181e0 firstp x0, p0, p15\.d
+ *[0-9a-f]+: 641ea000 flogb z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 641ea01f flogb z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 641ebc00 flogb z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 641ea3e0 flogb z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 641ec000 flogb z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641ec01f flogb z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641edc00 flogb z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 641ec3e0 flogb z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 641ee000 flogb z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641ee01f flogb z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641efc00 flogb z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 641ee3e0 flogb z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 044da000 fneg z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044da01f fneg z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044dbc00 fneg z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 044da3e0 fneg z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 048da000 fneg z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048da01f fneg z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048dbc00 fneg z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 048da3e0 fneg z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04cda000 fneg z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cda01f fneg z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cdbc00 fneg z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04cda3e0 fneg z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 645b8000 frecpx z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645b801f frecpx z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645b9c00 frecpx z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645b83e0 frecpx z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 649b8000 frecpx z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649b801f frecpx z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649b9c00 frecpx z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649b83e0 frecpx z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64db8000 frecpx z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64db801f frecpx z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64db9c00 frecpx z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64db83e0 frecpx z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6511a000 frint32x z0\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6511a01f frint32x z31\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6511bc00 frint32x z0\.s, p7/m, z0\.s
+ *[0-9a-f]+: 6511a3e0 frint32x z0\.s, p0/m, z31\.s
+ *[0-9a-f]+: 6513a000 frint32x z0\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6513a01f frint32x z31\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6513bc00 frint32x z0\.d, p7/m, z0\.d
+ *[0-9a-f]+: 6513a3e0 frint32x z0\.d, p0/m, z31\.d
+ *[0-9a-f]+: 641ca000 frint32x z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641ca01f frint32x z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641cbc00 frint32x z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 641ca3e0 frint32x z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 641ce000 frint32x z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641ce01f frint32x z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641cfc00 frint32x z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 641ce3e0 frint32x z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6510a000 frint32z z0\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6510a01f frint32z z31\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6510bc00 frint32z z0\.s, p7/m, z0\.s
+ *[0-9a-f]+: 6510a3e0 frint32z z0\.s, p0/m, z31\.s
+ *[0-9a-f]+: 6512a000 frint32z z0\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6512a01f frint32z z31\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6512bc00 frint32z z0\.d, p7/m, z0\.d
+ *[0-9a-f]+: 6512a3e0 frint32z z0\.d, p0/m, z31\.d
+ *[0-9a-f]+: 641c8000 frint32z z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641c801f frint32z z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641c9c00 frint32z z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 641c83e0 frint32z z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 641cc000 frint32z z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641cc01f frint32z z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641cdc00 frint32z z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 641cc3e0 frint32z z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6515a000 frint64x z0\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6515a01f frint64x z31\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6515bc00 frint64x z0\.s, p7/m, z0\.s
+ *[0-9a-f]+: 6515a3e0 frint64x z0\.s, p0/m, z31\.s
+ *[0-9a-f]+: 6517a000 frint64x z0\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6517a01f frint64x z31\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6517bc00 frint64x z0\.d, p7/m, z0\.d
+ *[0-9a-f]+: 6517a3e0 frint64x z0\.d, p0/m, z31\.d
+ *[0-9a-f]+: 641da000 frint64x z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641da01f frint64x z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641dbc00 frint64x z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 641da3e0 frint64x z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 641de000 frint64x z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641de01f frint64x z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641dfc00 frint64x z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 641de3e0 frint64x z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6514a000 frint64z z0\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6514a01f frint64z z31\.s, p0/m, z0\.s
+ *[0-9a-f]+: 6514bc00 frint64z z0\.s, p7/m, z0\.s
+ *[0-9a-f]+: 6514a3e0 frint64z z0\.s, p0/m, z31\.s
+ *[0-9a-f]+: 6516a000 frint64z z0\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6516a01f frint64z z31\.d, p0/m, z0\.d
+ *[0-9a-f]+: 6516bc00 frint64z z0\.d, p7/m, z0\.d
+ *[0-9a-f]+: 6516a3e0 frint64z z0\.d, p0/m, z31\.d
+ *[0-9a-f]+: 641d8000 frint64z z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641d801f frint64z z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 641d9c00 frint64z z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 641d83e0 frint64z z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 641dc000 frint64z z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641dc01f frint64z z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 641ddc00 frint64z z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 641dc3e0 frint64z z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6459c000 frintx z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6459c01f frintx z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6459dc00 frintx z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 6459c3e0 frintx z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 6499c000 frintx z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6499c01f frintx z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6499dc00 frintx z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 6499c3e0 frintx z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d9c000 frintx z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d9c01f frintx z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d9dc00 frintx z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d9c3e0 frintx z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6459e000 frinti z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6459e01f frinti z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6459fc00 frinti z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 6459e3e0 frinti z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 6499e000 frinti z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6499e01f frinti z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6499fc00 frinti z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 6499e3e0 frinti z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d9e000 frinti z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d9e01f frinti z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d9fc00 frinti z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d9e3e0 frinti z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 64598000 frinta z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6459801f frinta z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 64599c00 frinta z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645983e0 frinta z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 64998000 frinta z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6499801f frinta z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 64999c00 frinta z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649983e0 frinta z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d98000 frinta z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d9801f frinta z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d99c00 frinta z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d983e0 frinta z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 64588000 frintn z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458801f frintn z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 64589c00 frintn z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645883e0 frintn z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 64988000 frintn z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498801f frintn z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 64989c00 frintn z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649883e0 frintn z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d88000 frintn z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8801f frintn z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d89c00 frintn z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d883e0 frintn z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6458e000 frintz z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458e01f frintz z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458fc00 frintz z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 6458e3e0 frintz z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 6498e000 frintz z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498e01f frintz z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498fc00 frintz z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 6498e3e0 frintz z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d8e000 frintz z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8e01f frintz z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8fc00 frintz z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d8e3e0 frintz z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6458c000 frintm z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458c01f frintm z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458dc00 frintm z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 6458c3e0 frintm z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 6498c000 frintm z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498c01f frintm z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498dc00 frintm z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 6498c3e0 frintm z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d8c000 frintm z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8c01f frintm z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8dc00 frintm z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d8c3e0 frintm z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 6458a000 frintp z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458a01f frintp z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 6458bc00 frintp z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 6458a3e0 frintp z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 6498a000 frintp z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498a01f frintp z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 6498bc00 frintp z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 6498a3e0 frintp z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64d8a000 frintp z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8a01f frintp z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64d8bc00 frintp z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64d8a3e0 frintp z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 645ba000 fsqrt z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645ba01f fsqrt z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645bbc00 fsqrt z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645ba3e0 fsqrt z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 649ba000 fsqrt z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649ba01f fsqrt z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649bbc00 fsqrt z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649ba3e0 fsqrt z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64dba000 fsqrt z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dba01f fsqrt z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dbbc00 fsqrt z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64dba3e0 fsqrt z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 25228000 lastp x0, p0, p0\.b
+ *[0-9a-f]+: 2522801f lastp xzr, p0, p0\.b
+ *[0-9a-f]+: 2522bc00 lastp x0, p15, p0\.b
+ *[0-9a-f]+: 252281e0 lastp x0, p0, p15\.b
+ *[0-9a-f]+: 25628000 lastp x0, p0, p0\.h
+ *[0-9a-f]+: 2562801f lastp xzr, p0, p0\.h
+ *[0-9a-f]+: 2562bc00 lastp x0, p15, p0\.h
+ *[0-9a-f]+: 256281e0 lastp x0, p0, p15\.h
+ *[0-9a-f]+: 25a28000 lastp x0, p0, p0\.s
+ *[0-9a-f]+: 25a2801f lastp xzr, p0, p0\.s
+ *[0-9a-f]+: 25a2bc00 lastp x0, p15, p0\.s
+ *[0-9a-f]+: 25a281e0 lastp x0, p0, p15\.s
+ *[0-9a-f]+: 25e28000 lastp x0, p0, p0\.d
+ *[0-9a-f]+: 25e2801f lastp xzr, p0, p0\.d
+ *[0-9a-f]+: 25e2bc00 lastp x0, p15, p0\.d
+ *[0-9a-f]+: 25e281e0 lastp x0, p0, p15\.d
+ *[0-9a-f]+: 0407a000 neg z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0407a01f neg z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0407bc00 neg z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 0407a3e0 neg z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 0447a000 neg z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0447a01f neg z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0447bc00 neg z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0447a3e0 neg z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0487a000 neg z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0487a01f neg z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0487bc00 neg z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0487a3e0 neg z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c7a000 neg z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c7a01f neg z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c7bc00 neg z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c7a3e0 neg z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 040ea000 not z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040ea01f not z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 040ebc00 not z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 040ea3e0 not z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 044ea000 not z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044ea01f not z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 044ebc00 not z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 044ea3e0 not z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 048ea000 not z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048ea01f not z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 048ebc00 not z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 048ea3e0 not z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04cea000 not z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cea01f not z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04cebc00 not z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04cea3e0 not z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0527a000 rbit z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0527a01f rbit z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 0527bc00 rbit z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 0527a3e0 rbit z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 0567a000 rbit z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0567a01f rbit z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0567bc00 rbit z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0567a3e0 rbit z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 05a7a000 rbit z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a7a01f rbit z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a7bc00 rbit z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 05a7a3e0 rbit z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 05e7a000 rbit z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e7a01f rbit z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e7bc00 rbit z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 05e7a3e0 rbit z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0564a000 revb z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0564a01f revb z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0564bc00 revb z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0564a3e0 revb z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 05a4a000 revb z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a4a01f revb z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a4bc00 revb z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 05a4a3e0 revb z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 05e4a000 revb z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e4a01f revb z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e4bc00 revb z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 05e4a3e0 revb z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 05a5a000 revh z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a5a01f revh z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 05a5bc00 revh z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 05a5a3e0 revh z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 05e5a000 revh z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e5a01f revh z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e5bc00 revh z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 05e5a3e0 revh z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 05e6a000 revw z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e6a01f revw z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 05e6bc00 revw z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 05e6a3e0 revw z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 052ea000 revd z0\.q, p0/z, z0\.q
+ *[0-9a-f]+: 052ea01f revd z31\.q, p0/z, z0\.q
+ *[0-9a-f]+: 052ebc00 revd z0\.q, p7/z, z0\.q
+ *[0-9a-f]+: 052ea3e0 revd z0\.q, p0/z, z31\.q
+ *[0-9a-f]+: 645cc000 scvtf z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645cc01f scvtf z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645cdc00 scvtf z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645cc3e0 scvtf z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 645d8000 scvtf z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 645d801f scvtf z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 645d9c00 scvtf z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 645d83e0 scvtf z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 649d8000 scvtf z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649d801f scvtf z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649d9c00 scvtf z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649d83e0 scvtf z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64dc8000 scvtf z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dc801f scvtf z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dc9c00 scvtf z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64dc83e0 scvtf z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 645dc000 scvtf z0\.h, p0/z, z0\.d
+ *[0-9a-f]+: 645dc01f scvtf z31\.h, p0/z, z0\.d
+ *[0-9a-f]+: 645ddc00 scvtf z0\.h, p7/z, z0\.d
+ *[0-9a-f]+: 645dc3e0 scvtf z0\.h, p0/z, z31\.d
+ *[0-9a-f]+: 64dd8000 scvtf z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dd801f scvtf z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dd9c00 scvtf z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64dd83e0 scvtf z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 64ddc000 scvtf z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64ddc01f scvtf z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dddc00 scvtf z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64ddc3e0 scvtf z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 440aa000 sqabs z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 440aa01f sqabs z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 440abc00 sqabs z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 440aa3e0 sqabs z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 444aa000 sqabs z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 444aa01f sqabs z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 444abc00 sqabs z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 444aa3e0 sqabs z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 448aa000 sqabs z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 448aa01f sqabs z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 448abc00 sqabs z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 448aa3e0 sqabs z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 44caa000 sqabs z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 44caa01f sqabs z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 44cabc00 sqabs z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 44caa3e0 sqabs z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 440ba000 sqneg z0\.b, p0/z, z0\.b
+ *[0-9a-f]+: 440ba01f sqneg z31\.b, p0/z, z0\.b
+ *[0-9a-f]+: 440bbc00 sqneg z0\.b, p7/z, z0\.b
+ *[0-9a-f]+: 440ba3e0 sqneg z0\.b, p0/z, z31\.b
+ *[0-9a-f]+: 444ba000 sqneg z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 444ba01f sqneg z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 444bbc00 sqneg z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 444ba3e0 sqneg z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 448ba000 sqneg z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 448ba01f sqneg z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 448bbc00 sqneg z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 448ba3e0 sqneg z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 44cba000 sqneg z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 44cba01f sqneg z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 44cbbc00 sqneg z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 44cba3e0 sqneg z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0440a000 sxtb z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0440a01f sxtb z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0440bc00 sxtb z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0440a3e0 sxtb z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0480a000 sxtb z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0480a01f sxtb z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0480bc00 sxtb z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0480a3e0 sxtb z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c0a000 sxtb z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c0a01f sxtb z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c0bc00 sxtb z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c0a3e0 sxtb z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0482a000 sxth z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0482a01f sxth z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0482bc00 sxth z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0482a3e0 sxth z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c2a000 sxth z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c2a01f sxth z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c2bc00 sxth z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c2a3e0 sxth z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 04c4a000 sxtw z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c4a01f sxtw z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c4bc00 sxtw z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c4a3e0 sxtw z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 645ce000 ucvtf z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645ce01f ucvtf z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 645cfc00 ucvtf z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 645ce3e0 ucvtf z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 645da000 ucvtf z0\.h, p0/z, z0\.s
+ *[0-9a-f]+: 645da01f ucvtf z31\.h, p0/z, z0\.s
+ *[0-9a-f]+: 645dbc00 ucvtf z0\.h, p7/z, z0\.s
+ *[0-9a-f]+: 645da3e0 ucvtf z0\.h, p0/z, z31\.s
+ *[0-9a-f]+: 649da000 ucvtf z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649da01f ucvtf z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 649dbc00 ucvtf z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 649da3e0 ucvtf z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 64dca000 ucvtf z0\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dca01f ucvtf z31\.d, p0/z, z0\.s
+ *[0-9a-f]+: 64dcbc00 ucvtf z0\.d, p7/z, z0\.s
+ *[0-9a-f]+: 64dca3e0 ucvtf z0\.d, p0/z, z31\.s
+ *[0-9a-f]+: 645de000 ucvtf z0\.h, p0/z, z0\.d
+ *[0-9a-f]+: 645de01f ucvtf z31\.h, p0/z, z0\.d
+ *[0-9a-f]+: 645dfc00 ucvtf z0\.h, p7/z, z0\.d
+ *[0-9a-f]+: 645de3e0 ucvtf z0\.h, p0/z, z31\.d
+ *[0-9a-f]+: 64dda000 ucvtf z0\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64dda01f ucvtf z31\.s, p0/z, z0\.d
+ *[0-9a-f]+: 64ddbc00 ucvtf z0\.s, p7/z, z0\.d
+ *[0-9a-f]+: 64dda3e0 ucvtf z0\.s, p0/z, z31\.d
+ *[0-9a-f]+: 64dde000 ucvtf z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64dde01f ucvtf z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 64ddfc00 ucvtf z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 64dde3e0 ucvtf z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 4482a000 urecpe z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 4482a01f urecpe z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 4482bc00 urecpe z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 4482a3e0 urecpe z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 4483a000 ursqrte z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 4483a01f ursqrte z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 4483bc00 ursqrte z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 4483a3e0 ursqrte z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 0441a000 uxtb z0\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0441a01f uxtb z31\.h, p0/z, z0\.h
+ *[0-9a-f]+: 0441bc00 uxtb z0\.h, p7/z, z0\.h
+ *[0-9a-f]+: 0441a3e0 uxtb z0\.h, p0/z, z31\.h
+ *[0-9a-f]+: 0481a000 uxtb z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0481a01f uxtb z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0481bc00 uxtb z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0481a3e0 uxtb z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c1a000 uxtb z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c1a01f uxtb z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c1bc00 uxtb z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c1a3e0 uxtb z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 0483a000 uxth z0\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0483a01f uxth z31\.s, p0/z, z0\.s
+ *[0-9a-f]+: 0483bc00 uxth z0\.s, p7/z, z0\.s
+ *[0-9a-f]+: 0483a3e0 uxth z0\.s, p0/z, z31\.s
+ *[0-9a-f]+: 04c3a000 uxth z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c3a01f uxth z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c3bc00 uxth z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c3a3e0 uxth z0\.d, p0/z, z31\.d
+ *[0-9a-f]+: 04c5a000 uxtw z0\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c5a01f uxtw z31\.d, p0/z, z0\.d
+ *[0-9a-f]+: 04c5bc00 uxtw z0\.d, p7/z, z0\.d
+ *[0-9a-f]+: 04c5a3e0 uxtw z0\.d, p0/z, z31\.d
--- /dev/null
+ abs z0.b, p0/z, z0.b
+ abs z31.b, p0/z, z0.b
+ abs z0.b, p7/z, z0.b
+ abs z0.b, p0/z, z31.b
+ abs z0.h, p0/z, z0.h
+ abs z31.h, p0/z, z0.h
+ abs z0.h, p7/z, z0.h
+ abs z0.h, p0/z, z31.h
+ abs z0.s, p0/z, z0.s
+ abs z31.s, p0/z, z0.s
+ abs z0.s, p7/z, z0.s
+ abs z0.s, p0/z, z31.s
+ abs z0.d, p0/z, z0.d
+ abs z31.d, p0/z, z0.d
+ abs z0.d, p7/z, z0.d
+ abs z0.d, p0/z, z31.d
+
+ bfcvt z0.h, p0/z, z0.s
+ bfcvt z31.h, p0/z, z0.s
+ bfcvt z0.h, p7/z, z0.s
+ bfcvt z0.h, p0/z, z31.s
+
+ bfcvtnt z0.h, p0/z, z0.s
+ bfcvtnt z31.h, p0/z, z0.s
+ bfcvtnt z0.h, p7/z, z0.s
+ bfcvtnt z0.h, p0/z, z31.s
+
+ cls z0.b, p0/z, z0.b
+ cls z31.b, p0/z, z0.b
+ cls z0.b, p7/z, z0.b
+ cls z0.b, p0/z, z31.b
+ cls z0.h, p0/z, z0.h
+ cls z31.h, p0/z, z0.h
+ cls z0.h, p7/z, z0.h
+ cls z0.h, p0/z, z31.h
+ cls z0.s, p0/z, z0.s
+ cls z31.s, p0/z, z0.s
+ cls z0.s, p7/z, z0.s
+ cls z0.s, p0/z, z31.s
+ cls z0.d, p0/z, z0.d
+ cls z31.d, p0/z, z0.d
+ cls z0.d, p7/z, z0.d
+ cls z0.d, p0/z, z31.d
+
+ clz z0.b, p0/z, z0.b
+ clz z31.b, p0/z, z0.b
+ clz z0.b, p7/z, z0.b
+ clz z0.b, p0/z, z31.b
+ clz z0.h, p0/z, z0.h
+ clz z31.h, p0/z, z0.h
+ clz z0.h, p7/z, z0.h
+ clz z0.h, p0/z, z31.h
+ clz z0.s, p0/z, z0.s
+ clz z31.s, p0/z, z0.s
+ clz z0.s, p7/z, z0.s
+ clz z0.s, p0/z, z31.s
+ clz z0.d, p0/z, z0.d
+ clz z31.d, p0/z, z0.d
+ clz z0.d, p7/z, z0.d
+ clz z0.d, p0/z, z31.d
+
+ cnot z0.b, p0/z, z0.b
+ cnot z31.b, p0/z, z0.b
+ cnot z0.b, p7/z, z0.b
+ cnot z0.b, p0/z, z31.b
+ cnot z0.h, p0/z, z0.h
+ cnot z31.h, p0/z, z0.h
+ cnot z0.h, p7/z, z0.h
+ cnot z0.h, p0/z, z31.h
+ cnot z0.s, p0/z, z0.s
+ cnot z31.s, p0/z, z0.s
+ cnot z0.s, p7/z, z0.s
+ cnot z0.s, p0/z, z31.s
+ cnot z0.d, p0/z, z0.d
+ cnot z31.d, p0/z, z0.d
+ cnot z0.d, p7/z, z0.d
+ cnot z0.d, p0/z, z31.d
+
+ cnt z0.b, p0/z, z0.b
+ cnt z31.b, p0/z, z0.b
+ cnt z0.b, p7/z, z0.b
+ cnt z0.b, p0/z, z31.b
+ cnt z0.h, p0/z, z0.h
+ cnt z31.h, p0/z, z0.h
+ cnt z0.h, p7/z, z0.h
+ cnt z0.h, p0/z, z31.h
+ cnt z0.s, p0/z, z0.s
+ cnt z31.s, p0/z, z0.s
+ cnt z0.s, p7/z, z0.s
+ cnt z0.s, p0/z, z31.s
+ cnt z0.d, p0/z, z0.d
+ cnt z31.d, p0/z, z0.d
+ cnt z0.d, p7/z, z0.d
+ cnt z0.d, p0/z, z31.d
+
+// Word and doubleword forms in nonstreaming mode are part of FEAT_SVE.
+ compact z0.b, p0, z0.b
+ compact z31.b, p0, z0.b
+ compact z0.b, p7, z0.b
+ compact z0.b, p0, z31.b
+ compact z0.h, p0, z0.h
+ compact z31.h, p0, z0.h
+ compact z0.h, p7, z0.h
+ compact z0.h, p0, z31.h
+ compact z0.s, p0, z0.s
+ compact z31.s, p0, z0.s
+ compact z0.s, p7, z0.s
+ compact z0.s, p0, z31.s
+ compact z0.d, p0, z0.d
+ compact z31.d, p0, z0.d
+ compact z0.d, p7, z0.d
+ compact z0.d, p0, z31.d
+
+ expand z0.b, p0, z0.b
+ expand z31.b, p0, z0.b
+ expand z0.b, p7, z0.b
+ expand z0.b, p0, z31.b
+ expand z0.h, p0, z0.h
+ expand z31.h, p0, z0.h
+ expand z0.h, p7, z0.h
+ expand z0.h, p0, z31.h
+ expand z0.s, p0, z0.s
+ expand z31.s, p0, z0.s
+ expand z0.s, p7, z0.s
+ expand z0.s, p0, z31.s
+ expand z0.d, p0, z0.d
+ expand z31.d, p0, z0.d
+ expand z0.d, p7, z0.d
+ expand z0.d, p0, z31.d
+
+ fabs z0.h, p0/z, z0.h
+ fabs z31.h, p0/z, z0.h
+ fabs z0.h, p7/z, z0.h
+ fabs z0.h, p0/z, z31.h
+ fabs z0.s, p0/z, z0.s
+ fabs z31.s, p0/z, z0.s
+ fabs z0.s, p7/z, z0.s
+ fabs z0.s, p0/z, z31.s
+ fabs z0.d, p0/z, z0.d
+ fabs z31.d, p0/z, z0.d
+ fabs z0.d, p7/z, z0.d
+ fabs z0.d, p0/z, z31.d
+
+ fcvt z0.s, p0/z, z0.h
+ fcvt z31.s, p0/z, z0.h
+ fcvt z0.s, p7/z, z0.h
+ fcvt z0.s, p0/z, z31.h
+ fcvt z0.d, p0/z, z0.h
+ fcvt z31.d, p0/z, z0.h
+ fcvt z0.d, p7/z, z0.h
+ fcvt z0.d, p0/z, z31.h
+ fcvt z0.h, p0/z, z0.s
+ fcvt z31.h, p0/z, z0.s
+ fcvt z0.h, p7/z, z0.s
+ fcvt z0.h, p0/z, z31.s
+ fcvt z0.d, p0/z, z0.s
+ fcvt z31.d, p0/z, z0.s
+ fcvt z0.d, p7/z, z0.s
+ fcvt z0.d, p0/z, z31.s
+ fcvt z0.h, p0/z, z0.d
+ fcvt z31.h, p0/z, z0.d
+ fcvt z0.h, p7/z, z0.d
+ fcvt z0.h, p0/z, z31.d
+ fcvt z0.s, p0/z, z0.d
+ fcvt z31.s, p0/z, z0.d
+ fcvt z0.s, p7/z, z0.d
+ fcvt z0.s, p0/z, z31.d
+
+ fcvtlt z0.s, p0/z, z0.h
+ fcvtlt z31.s, p0/z, z0.h
+ fcvtlt z0.s, p7/z, z0.h
+ fcvtlt z0.s, p0/z, z31.h
+ fcvtlt z0.d, p0/z, z0.s
+ fcvtlt z31.d, p0/z, z0.s
+ fcvtlt z0.d, p7/z, z0.s
+ fcvtlt z0.d, p0/z, z31.s
+
+ fcvtnt z0.h, p0/z, z0.s
+ fcvtnt z31.h, p0/z, z0.s
+ fcvtnt z0.h, p7/z, z0.s
+ fcvtnt z0.h, p0/z, z31.s
+ fcvtnt z0.s, p0/z, z0.d
+ fcvtnt z31.s, p0/z, z0.d
+ fcvtnt z0.s, p7/z, z0.d
+ fcvtnt z0.s, p0/z, z31.d
+
+ fcvtx z0.s, p0/z, z0.d
+ fcvtx z31.s, p0/z, z0.d
+ fcvtx z0.s, p7/z, z0.d
+ fcvtx z0.s, p0/z, z31.d
+
+ fcvtxnt z0.s, p0/z, z0.d
+ fcvtxnt z31.s, p0/z, z0.d
+ fcvtxnt z0.s, p7/z, z0.d
+ fcvtxnt z0.s, p0/z, z31.d
+
+ fcvtzs z0.h, p0/z, z0.h
+ fcvtzs z31.h, p0/z, z0.h
+ fcvtzs z0.h, p7/z, z0.h
+ fcvtzs z0.h, p0/z, z31.h
+ fcvtzs z0.s, p0/z, z0.h
+ fcvtzs z31.s, p0/z, z0.h
+ fcvtzs z0.s, p7/z, z0.h
+ fcvtzs z0.s, p0/z, z31.h
+ fcvtzs z0.d, p0/z, z0.h
+ fcvtzs z31.d, p0/z, z0.h
+ fcvtzs z0.d, p7/z, z0.h
+ fcvtzs z0.d, p0/z, z31.h
+ fcvtzs z0.s, p0/z, z0.s
+ fcvtzs z31.s, p0/z, z0.s
+ fcvtzs z0.s, p7/z, z0.s
+ fcvtzs z0.s, p0/z, z31.s
+ fcvtzs z0.d, p0/z, z0.s
+ fcvtzs z31.d, p0/z, z0.s
+ fcvtzs z0.d, p7/z, z0.s
+ fcvtzs z0.d, p0/z, z31.s
+ fcvtzs z0.s, p0/z, z0.d
+ fcvtzs z31.s, p0/z, z0.d
+ fcvtzs z0.s, p7/z, z0.d
+ fcvtzs z0.s, p0/z, z31.d
+ fcvtzs z0.d, p0/z, z0.d
+ fcvtzs z31.d, p0/z, z0.d
+ fcvtzs z0.d, p7/z, z0.d
+ fcvtzs z0.d, p0/z, z31.d
+
+ fcvtzu z0.h, p0/z, z0.h
+ fcvtzu z31.h, p0/z, z0.h
+ fcvtzu z0.h, p7/z, z0.h
+ fcvtzu z0.h, p0/z, z31.h
+ fcvtzu z0.s, p0/z, z0.h
+ fcvtzu z31.s, p0/z, z0.h
+ fcvtzu z0.s, p7/z, z0.h
+ fcvtzu z0.s, p0/z, z31.h
+ fcvtzu z0.d, p0/z, z0.h
+ fcvtzu z31.d, p0/z, z0.h
+ fcvtzu z0.d, p7/z, z0.h
+ fcvtzu z0.d, p0/z, z31.h
+ fcvtzu z0.s, p0/z, z0.s
+ fcvtzu z31.s, p0/z, z0.s
+ fcvtzu z0.s, p7/z, z0.s
+ fcvtzu z0.s, p0/z, z31.s
+ fcvtzu z0.d, p0/z, z0.s
+ fcvtzu z31.d, p0/z, z0.s
+ fcvtzu z0.d, p7/z, z0.s
+ fcvtzu z0.d, p0/z, z31.s
+ fcvtzu z0.s, p0/z, z0.d
+ fcvtzu z31.s, p0/z, z0.d
+ fcvtzu z0.s, p7/z, z0.d
+ fcvtzu z0.s, p0/z, z31.d
+ fcvtzu z0.d, p0/z, z0.d
+ fcvtzu z31.d, p0/z, z0.d
+ fcvtzu z0.d, p7/z, z0.d
+ fcvtzu z0.d, p0/z, z31.d
+
+ firstp x0, p0, p0.b
+ firstp xzr, p0, p0.b
+ firstp x0, p15, p0.b
+ firstp x0, p0, p15.b
+ firstp x0, p0, p0.h
+ firstp xzr, p0, p0.h
+ firstp x0, p15, p0.h
+ firstp x0, p0, p15.h
+ firstp x0, p0, p0.s
+ firstp xzr, p0, p0.s
+ firstp x0, p15, p0.s
+ firstp x0, p0, p15.s
+ firstp x0, p0, p0.d
+ firstp xzr, p0, p0.d
+ firstp x0, p15, p0.d
+ firstp x0, p0, p15.d
+
+ flogb z0.h, p0/z, z0.h
+ flogb z31.h, p0/z, z0.h
+ flogb z0.h, p7/z, z0.h
+ flogb z0.h, p0/z, z31.h
+ flogb z0.s, p0/z, z0.s
+ flogb z31.s, p0/z, z0.s
+ flogb z0.s, p7/z, z0.s
+ flogb z0.s, p0/z, z31.s
+ flogb z0.d, p0/z, z0.d
+ flogb z31.d, p0/z, z0.d
+ flogb z0.d, p7/z, z0.d
+ flogb z0.d, p0/z, z31.d
+
+ fneg z0.h, p0/z, z0.h
+ fneg z31.h, p0/z, z0.h
+ fneg z0.h, p7/z, z0.h
+ fneg z0.h, p0/z, z31.h
+ fneg z0.s, p0/z, z0.s
+ fneg z31.s, p0/z, z0.s
+ fneg z0.s, p7/z, z0.s
+ fneg z0.s, p0/z, z31.s
+ fneg z0.d, p0/z, z0.d
+ fneg z31.d, p0/z, z0.d
+ fneg z0.d, p7/z, z0.d
+ fneg z0.d, p0/z, z31.d
+
+ frecpx z0.h, p0/z, z0.h
+ frecpx z31.h, p0/z, z0.h
+ frecpx z0.h, p7/z, z0.h
+ frecpx z0.h, p0/z, z31.h
+ frecpx z0.s, p0/z, z0.s
+ frecpx z31.s, p0/z, z0.s
+ frecpx z0.s, p7/z, z0.s
+ frecpx z0.s, p0/z, z31.s
+ frecpx z0.d, p0/z, z0.d
+ frecpx z31.d, p0/z, z0.d
+ frecpx z0.d, p7/z, z0.d
+ frecpx z0.d, p0/z, z31.d
+
+ frint32x z0.s, p0/m, z0.s
+ frint32x z31.s, p0/m, z0.s
+ frint32x z0.s, p7/m, z0.s
+ frint32x z0.s, p0/m, z31.s
+ frint32x z0.d, p0/m, z0.d
+ frint32x z31.d, p0/m, z0.d
+ frint32x z0.d, p7/m, z0.d
+ frint32x z0.d, p0/m, z31.d
+ frint32x z0.s, p0/z, z0.s
+ frint32x z31.s, p0/z, z0.s
+ frint32x z0.s, p7/z, z0.s
+ frint32x z0.s, p0/z, z31.s
+ frint32x z0.d, p0/z, z0.d
+ frint32x z31.d, p0/z, z0.d
+ frint32x z0.d, p7/z, z0.d
+ frint32x z0.d, p0/z, z31.d
+
+ frint32z z0.s, p0/m, z0.s
+ frint32z z31.s, p0/m, z0.s
+ frint32z z0.s, p7/m, z0.s
+ frint32z z0.s, p0/m, z31.s
+ frint32z z0.d, p0/m, z0.d
+ frint32z z31.d, p0/m, z0.d
+ frint32z z0.d, p7/m, z0.d
+ frint32z z0.d, p0/m, z31.d
+ frint32z z0.s, p0/z, z0.s
+ frint32z z31.s, p0/z, z0.s
+ frint32z z0.s, p7/z, z0.s
+ frint32z z0.s, p0/z, z31.s
+ frint32z z0.d, p0/z, z0.d
+ frint32z z31.d, p0/z, z0.d
+ frint32z z0.d, p7/z, z0.d
+ frint32z z0.d, p0/z, z31.d
+
+ frint64x z0.s, p0/m, z0.s
+ frint64x z31.s, p0/m, z0.s
+ frint64x z0.s, p7/m, z0.s
+ frint64x z0.s, p0/m, z31.s
+ frint64x z0.d, p0/m, z0.d
+ frint64x z31.d, p0/m, z0.d
+ frint64x z0.d, p7/m, z0.d
+ frint64x z0.d, p0/m, z31.d
+ frint64x z0.s, p0/z, z0.s
+ frint64x z31.s, p0/z, z0.s
+ frint64x z0.s, p7/z, z0.s
+ frint64x z0.s, p0/z, z31.s
+ frint64x z0.d, p0/z, z0.d
+ frint64x z31.d, p0/z, z0.d
+ frint64x z0.d, p7/z, z0.d
+ frint64x z0.d, p0/z, z31.d
+
+ frint64z z0.s, p0/m, z0.s
+ frint64z z31.s, p0/m, z0.s
+ frint64z z0.s, p7/m, z0.s
+ frint64z z0.s, p0/m, z31.s
+ frint64z z0.d, p0/m, z0.d
+ frint64z z31.d, p0/m, z0.d
+ frint64z z0.d, p7/m, z0.d
+ frint64z z0.d, p0/m, z31.d
+ frint64z z0.s, p0/z, z0.s
+ frint64z z31.s, p0/z, z0.s
+ frint64z z0.s, p7/z, z0.s
+ frint64z z0.s, p0/z, z31.s
+ frint64z z0.d, p0/z, z0.d
+ frint64z z31.d, p0/z, z0.d
+ frint64z z0.d, p7/z, z0.d
+ frint64z z0.d, p0/z, z31.d
+
+ frintx z0.h, p0/z, z0.h
+ frintx z31.h, p0/z, z0.h
+ frintx z0.h, p7/z, z0.h
+ frintx z0.h, p0/z, z31.h
+ frintx z0.s, p0/z, z0.s
+ frintx z31.s, p0/z, z0.s
+ frintx z0.s, p7/z, z0.s
+ frintx z0.s, p0/z, z31.s
+ frintx z0.d, p0/z, z0.d
+ frintx z31.d, p0/z, z0.d
+ frintx z0.d, p7/z, z0.d
+ frintx z0.d, p0/z, z31.d
+
+ frinti z0.h, p0/z, z0.h
+ frinti z31.h, p0/z, z0.h
+ frinti z0.h, p7/z, z0.h
+ frinti z0.h, p0/z, z31.h
+ frinti z0.s, p0/z, z0.s
+ frinti z31.s, p0/z, z0.s
+ frinti z0.s, p7/z, z0.s
+ frinti z0.s, p0/z, z31.s
+ frinti z0.d, p0/z, z0.d
+ frinti z31.d, p0/z, z0.d
+ frinti z0.d, p7/z, z0.d
+ frinti z0.d, p0/z, z31.d
+
+ frinta z0.h, p0/z, z0.h
+ frinta z31.h, p0/z, z0.h
+ frinta z0.h, p7/z, z0.h
+ frinta z0.h, p0/z, z31.h
+ frinta z0.s, p0/z, z0.s
+ frinta z31.s, p0/z, z0.s
+ frinta z0.s, p7/z, z0.s
+ frinta z0.s, p0/z, z31.s
+ frinta z0.d, p0/z, z0.d
+ frinta z31.d, p0/z, z0.d
+ frinta z0.d, p7/z, z0.d
+ frinta z0.d, p0/z, z31.d
+
+ frintn z0.h, p0/z, z0.h
+ frintn z31.h, p0/z, z0.h
+ frintn z0.h, p7/z, z0.h
+ frintn z0.h, p0/z, z31.h
+ frintn z0.s, p0/z, z0.s
+ frintn z31.s, p0/z, z0.s
+ frintn z0.s, p7/z, z0.s
+ frintn z0.s, p0/z, z31.s
+ frintn z0.d, p0/z, z0.d
+ frintn z31.d, p0/z, z0.d
+ frintn z0.d, p7/z, z0.d
+ frintn z0.d, p0/z, z31.d
+
+ frintz z0.h, p0/z, z0.h
+ frintz z31.h, p0/z, z0.h
+ frintz z0.h, p7/z, z0.h
+ frintz z0.h, p0/z, z31.h
+ frintz z0.s, p0/z, z0.s
+ frintz z31.s, p0/z, z0.s
+ frintz z0.s, p7/z, z0.s
+ frintz z0.s, p0/z, z31.s
+ frintz z0.d, p0/z, z0.d
+ frintz z31.d, p0/z, z0.d
+ frintz z0.d, p7/z, z0.d
+ frintz z0.d, p0/z, z31.d
+
+ frintm z0.h, p0/z, z0.h
+ frintm z31.h, p0/z, z0.h
+ frintm z0.h, p7/z, z0.h
+ frintm z0.h, p0/z, z31.h
+ frintm z0.s, p0/z, z0.s
+ frintm z31.s, p0/z, z0.s
+ frintm z0.s, p7/z, z0.s
+ frintm z0.s, p0/z, z31.s
+ frintm z0.d, p0/z, z0.d
+ frintm z31.d, p0/z, z0.d
+ frintm z0.d, p7/z, z0.d
+ frintm z0.d, p0/z, z31.d
+
+ frintp z0.h, p0/z, z0.h
+ frintp z31.h, p0/z, z0.h
+ frintp z0.h, p7/z, z0.h
+ frintp z0.h, p0/z, z31.h
+ frintp z0.s, p0/z, z0.s
+ frintp z31.s, p0/z, z0.s
+ frintp z0.s, p7/z, z0.s
+ frintp z0.s, p0/z, z31.s
+ frintp z0.d, p0/z, z0.d
+ frintp z31.d, p0/z, z0.d
+ frintp z0.d, p7/z, z0.d
+ frintp z0.d, p0/z, z31.d
+
+ fsqrt z0.h, p0/z, z0.h
+ fsqrt z31.h, p0/z, z0.h
+ fsqrt z0.h, p7/z, z0.h
+ fsqrt z0.h, p0/z, z31.h
+ fsqrt z0.s, p0/z, z0.s
+ fsqrt z31.s, p0/z, z0.s
+ fsqrt z0.s, p7/z, z0.s
+ fsqrt z0.s, p0/z, z31.s
+ fsqrt z0.d, p0/z, z0.d
+ fsqrt z31.d, p0/z, z0.d
+ fsqrt z0.d, p7/z, z0.d
+ fsqrt z0.d, p0/z, z31.d
+
+ lastp x0, p0, p0.b
+ lastp xzr, p0, p0.b
+ lastp x0, p15, p0.b
+ lastp x0, p0, p15.b
+ lastp x0, p0, p0.h
+ lastp xzr, p0, p0.h
+ lastp x0, p15, p0.h
+ lastp x0, p0, p15.h
+ lastp x0, p0, p0.s
+ lastp xzr, p0, p0.s
+ lastp x0, p15, p0.s
+ lastp x0, p0, p15.s
+ lastp x0, p0, p0.d
+ lastp xzr, p0, p0.d
+ lastp x0, p15, p0.d
+ lastp x0, p0, p15.d
+
+ neg z0.b, p0/z, z0.b
+ neg z31.b, p0/z, z0.b
+ neg z0.b, p7/z, z0.b
+ neg z0.b, p0/z, z31.b
+ neg z0.h, p0/z, z0.h
+ neg z31.h, p0/z, z0.h
+ neg z0.h, p7/z, z0.h
+ neg z0.h, p0/z, z31.h
+ neg z0.s, p0/z, z0.s
+ neg z31.s, p0/z, z0.s
+ neg z0.s, p7/z, z0.s
+ neg z0.s, p0/z, z31.s
+ neg z0.d, p0/z, z0.d
+ neg z31.d, p0/z, z0.d
+ neg z0.d, p7/z, z0.d
+ neg z0.d, p0/z, z31.d
+
+ not z0.b, p0/z, z0.b
+ not z31.b, p0/z, z0.b
+ not z0.b, p7/z, z0.b
+ not z0.b, p0/z, z31.b
+ not z0.h, p0/z, z0.h
+ not z31.h, p0/z, z0.h
+ not z0.h, p7/z, z0.h
+ not z0.h, p0/z, z31.h
+ not z0.s, p0/z, z0.s
+ not z31.s, p0/z, z0.s
+ not z0.s, p7/z, z0.s
+ not z0.s, p0/z, z31.s
+ not z0.d, p0/z, z0.d
+ not z31.d, p0/z, z0.d
+ not z0.d, p7/z, z0.d
+ not z0.d, p0/z, z31.d
+
+ rbit z0.b, p0/z, z0.b
+ rbit z31.b, p0/z, z0.b
+ rbit z0.b, p7/z, z0.b
+ rbit z0.b, p0/z, z31.b
+ rbit z0.h, p0/z, z0.h
+ rbit z31.h, p0/z, z0.h
+ rbit z0.h, p7/z, z0.h
+ rbit z0.h, p0/z, z31.h
+ rbit z0.s, p0/z, z0.s
+ rbit z31.s, p0/z, z0.s
+ rbit z0.s, p7/z, z0.s
+ rbit z0.s, p0/z, z31.s
+ rbit z0.d, p0/z, z0.d
+ rbit z31.d, p0/z, z0.d
+ rbit z0.d, p7/z, z0.d
+ rbit z0.d, p0/z, z31.d
+
+ revb z0.h, p0/z, z0.h
+ revb z31.h, p0/z, z0.h
+ revb z0.h, p7/z, z0.h
+ revb z0.h, p0/z, z31.h
+ revb z0.s, p0/z, z0.s
+ revb z31.s, p0/z, z0.s
+ revb z0.s, p7/z, z0.s
+ revb z0.s, p0/z, z31.s
+ revb z0.d, p0/z, z0.d
+ revb z31.d, p0/z, z0.d
+ revb z0.d, p7/z, z0.d
+ revb z0.d, p0/z, z31.d
+
+ revh z0.s, p0/z, z0.s
+ revh z31.s, p0/z, z0.s
+ revh z0.s, p7/z, z0.s
+ revh z0.s, p0/z, z31.s
+ revh z0.d, p0/z, z0.d
+ revh z31.d, p0/z, z0.d
+ revh z0.d, p7/z, z0.d
+ revh z0.d, p0/z, z31.d
+
+ revw z0.d, p0/z, z0.d
+ revw z31.d, p0/z, z0.d
+ revw z0.d, p7/z, z0.d
+ revw z0.d, p0/z, z31.d
+
+ revd z0.q, p0/z, z0.q
+ revd z31.q, p0/z, z0.q
+ revd z0.q, p7/z, z0.q
+ revd z0.q, p0/z, z31.q
+
+ scvtf z0.h, p0/z, z0.h
+ scvtf z31.h, p0/z, z0.h
+ scvtf z0.h, p7/z, z0.h
+ scvtf z0.h, p0/z, z31.h
+ scvtf z0.h, p0/z, z0.s
+ scvtf z31.h, p0/z, z0.s
+ scvtf z0.h, p7/z, z0.s
+ scvtf z0.h, p0/z, z31.s
+ scvtf z0.s, p0/z, z0.s
+ scvtf z31.s, p0/z, z0.s
+ scvtf z0.s, p7/z, z0.s
+ scvtf z0.s, p0/z, z31.s
+ scvtf z0.d, p0/z, z0.s
+ scvtf z31.d, p0/z, z0.s
+ scvtf z0.d, p7/z, z0.s
+ scvtf z0.d, p0/z, z31.s
+ scvtf z0.h, p0/z, z0.d
+ scvtf z31.h, p0/z, z0.d
+ scvtf z0.h, p7/z, z0.d
+ scvtf z0.h, p0/z, z31.d
+ scvtf z0.s, p0/z, z0.d
+ scvtf z31.s, p0/z, z0.d
+ scvtf z0.s, p7/z, z0.d
+ scvtf z0.s, p0/z, z31.d
+ scvtf z0.d, p0/z, z0.d
+ scvtf z31.d, p0/z, z0.d
+ scvtf z0.d, p7/z, z0.d
+ scvtf z0.d, p0/z, z31.d
+
+ sqabs z0.b, p0/z, z0.b
+ sqabs z31.b, p0/z, z0.b
+ sqabs z0.b, p7/z, z0.b
+ sqabs z0.b, p0/z, z31.b
+ sqabs z0.h, p0/z, z0.h
+ sqabs z31.h, p0/z, z0.h
+ sqabs z0.h, p7/z, z0.h
+ sqabs z0.h, p0/z, z31.h
+ sqabs z0.s, p0/z, z0.s
+ sqabs z31.s, p0/z, z0.s
+ sqabs z0.s, p7/z, z0.s
+ sqabs z0.s, p0/z, z31.s
+ sqabs z0.d, p0/z, z0.d
+ sqabs z31.d, p0/z, z0.d
+ sqabs z0.d, p7/z, z0.d
+ sqabs z0.d, p0/z, z31.d
+
+ sqneg z0.b, p0/z, z0.b
+ sqneg z31.b, p0/z, z0.b
+ sqneg z0.b, p7/z, z0.b
+ sqneg z0.b, p0/z, z31.b
+ sqneg z0.h, p0/z, z0.h
+ sqneg z31.h, p0/z, z0.h
+ sqneg z0.h, p7/z, z0.h
+ sqneg z0.h, p0/z, z31.h
+ sqneg z0.s, p0/z, z0.s
+ sqneg z31.s, p0/z, z0.s
+ sqneg z0.s, p7/z, z0.s
+ sqneg z0.s, p0/z, z31.s
+ sqneg z0.d, p0/z, z0.d
+ sqneg z31.d, p0/z, z0.d
+ sqneg z0.d, p7/z, z0.d
+ sqneg z0.d, p0/z, z31.d
+
+ sxtb z0.h, p0/z, z0.h
+ sxtb z31.h, p0/z, z0.h
+ sxtb z0.h, p7/z, z0.h
+ sxtb z0.h, p0/z, z31.h
+ sxtb z0.s, p0/z, z0.s
+ sxtb z31.s, p0/z, z0.s
+ sxtb z0.s, p7/z, z0.s
+ sxtb z0.s, p0/z, z31.s
+ sxtb z0.d, p0/z, z0.d
+ sxtb z31.d, p0/z, z0.d
+ sxtb z0.d, p7/z, z0.d
+ sxtb z0.d, p0/z, z31.d
+
+ sxth z0.s, p0/z, z0.s
+ sxth z31.s, p0/z, z0.s
+ sxth z0.s, p7/z, z0.s
+ sxth z0.s, p0/z, z31.s
+ sxth z0.d, p0/z, z0.d
+ sxth z31.d, p0/z, z0.d
+ sxth z0.d, p7/z, z0.d
+ sxth z0.d, p0/z, z31.d
+
+ sxtw z0.d, p0/z, z0.d
+ sxtw z31.d, p0/z, z0.d
+ sxtw z0.d, p7/z, z0.d
+ sxtw z0.d, p0/z, z31.d
+
+ ucvtf z0.h, p0/z, z0.h
+ ucvtf z31.h, p0/z, z0.h
+ ucvtf z0.h, p7/z, z0.h
+ ucvtf z0.h, p0/z, z31.h
+ ucvtf z0.h, p0/z, z0.s
+ ucvtf z31.h, p0/z, z0.s
+ ucvtf z0.h, p7/z, z0.s
+ ucvtf z0.h, p0/z, z31.s
+ ucvtf z0.s, p0/z, z0.s
+ ucvtf z31.s, p0/z, z0.s
+ ucvtf z0.s, p7/z, z0.s
+ ucvtf z0.s, p0/z, z31.s
+ ucvtf z0.d, p0/z, z0.s
+ ucvtf z31.d, p0/z, z0.s
+ ucvtf z0.d, p7/z, z0.s
+ ucvtf z0.d, p0/z, z31.s
+ ucvtf z0.h, p0/z, z0.d
+ ucvtf z31.h, p0/z, z0.d
+ ucvtf z0.h, p7/z, z0.d
+ ucvtf z0.h, p0/z, z31.d
+ ucvtf z0.s, p0/z, z0.d
+ ucvtf z31.s, p0/z, z0.d
+ ucvtf z0.s, p7/z, z0.d
+ ucvtf z0.s, p0/z, z31.d
+ ucvtf z0.d, p0/z, z0.d
+ ucvtf z31.d, p0/z, z0.d
+ ucvtf z0.d, p7/z, z0.d
+ ucvtf z0.d, p0/z, z31.d
+
+ urecpe z0.s, p0/z, z0.s
+ urecpe z31.s, p0/z, z0.s
+ urecpe z0.s, p7/z, z0.s
+ urecpe z0.s, p0/z, z31.s
+
+ ursqrte z0.s, p0/z, z0.s
+ ursqrte z31.s, p0/z, z0.s
+ ursqrte z0.s, p7/z, z0.s
+ ursqrte z0.s, p0/z, z31.s
+
+ uxtb z0.h, p0/z, z0.h
+ uxtb z31.h, p0/z, z0.h
+ uxtb z0.h, p7/z, z0.h
+ uxtb z0.h, p0/z, z31.h
+ uxtb z0.s, p0/z, z0.s
+ uxtb z31.s, p0/z, z0.s
+ uxtb z0.s, p7/z, z0.s
+ uxtb z0.s, p0/z, z31.s
+ uxtb z0.d, p0/z, z0.d
+ uxtb z31.d, p0/z, z0.d
+ uxtb z0.d, p7/z, z0.d
+ uxtb z0.d, p0/z, z31.d
+
+ uxth z0.s, p0/z, z0.s
+ uxth z31.s, p0/z, z0.s
+ uxth z0.s, p7/z, z0.s
+ uxth z0.s, p0/z, z31.s
+ uxth z0.d, p0/z, z0.d
+ uxth z31.d, p0/z, z0.d
+ uxth z0.d, p7/z, z0.d
+ uxth z0.d, p0/z, z31.d
+
+ uxtw z0.d, p0/z, z0.d
+ uxtw z31.d, p0/z, z0.d
+ uxtw z0.d, p7/z, z0.d
+ uxtw z0.d, p0/z, z31.d
+
AARCH64_FEATURE_SVE_B16B16,
/* SME non-widening BFloat16 instructions. */
AARCH64_FEATURE_SME_B16B16,
+ /* SVE2.2. */
+ AARCH64_FEATURE_SVE2p2,
+ /* SME2.2. */
+ AARCH64_FEATURE_SME2p2,
/* Armv9.1-A processors. */
AARCH64_FEATURE_V9_1A,
/* Armv9.2-A processors. */
AARCH64_FEATURE_FP8DOT2_SVE,
/* +sme-f16f16 or +sme-f8f16 */
AARCH64_FEATURE_SME_F16F16_F8F16,
+ /* +sve or +sme2p2 */
+ AARCH64_FEATURE_SVE_SME2p2,
/* +sve2 or +sme2 */
AARCH64_FEATURE_SVE2_SME2,
/* +sve2p1 or +sme */
AARCH64_FEATURE_SVE2p1_SME2,
/* +sve2p1 or +sme2p1 */
AARCH64_FEATURE_SVE2p1_SME2p1,
+ /* +sve2p2 or +sme2p2 */
+ AARCH64_FEATURE_SVE2p2_SME2p2,
AARCH64_NUM_FEATURES
};
sve_pred_zm,
sve_shift_pred,
sve_shift_unpred,
+ sve_size_bh,
sve_size_bhs,
sve_size_bhsd,
sve_size_hsd,
sve_size_hsd2,
+ sve_size_hsd3,
sve_size_sd,
- sve_size_bh,
sve_size_sd2,
+ sve_size_sd3,
+ sve_size_sd4,
sve_size_13,
sve_shift_tsz_hsd,
sve_shift_tsz_bhsd,
insert_field (FLD_SVE_sz2, &inst->value, aarch64_get_variant (inst), 0);
break;
+ case sve_size_sd3:
+ insert_field (FLD_SVE_sz3, &inst->value, aarch64_get_variant (inst), 0);
+ break;
+
+ case sve_size_sd4:
+ insert_field (FLD_SVE_sz4, &inst->value, aarch64_get_variant (inst), 0);
+ break;
+
case sve_size_hsd2:
insert_field (FLD_SVE_size, &inst->value,
aarch64_get_variant (inst) + 1, 0);
break;
+ case sve_size_hsd3:
+ insert_field (FLD_len, &inst->value,
+ aarch64_get_variant (inst) + 1, 0);
+ break;
+
case sve_size_tsz_bhs:
insert_fields (&inst->value,
(1 << aarch64_get_variant (inst)),
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0000101xxxxxxxxxxxxx
- sxtb. */
- return 2054;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000000101xxxxxxxxxxxxx
+ sxtb. */
+ return 3733;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010000101xxxxxxxxxxxxx
+ sxtb. */
+ return 2054;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1000101xxxxxxxxxxxxx
- cls. */
- return 1432;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001000101xxxxxxxxxxxxx
+ cls. */
+ return 3663;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011000101xxxxxxxxxxxxx
+ cls. */
+ return 1432;
+ }
}
}
else
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0100101xxxxxxxxxxxxx
- sxtw. */
- return 2056;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000100101xxxxxxxxxxxxx
+ sxtw. */
+ return 3735;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010100101xxxxxxxxxxxxx
+ sxtw. */
+ return 2056;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1100101xxxxxxxxxxxxx
- fabs. */
- return 1494;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001100101xxxxxxxxxxxxx
+ fabs. */
+ return 3669;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011100101xxxxxxxxxxxxx
+ fabs. */
+ return 1494;
+ }
}
}
}
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0010101xxxxxxxxxxxxx
- sxth. */
- return 2055;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000010101xxxxxxxxxxxxx
+ sxth. */
+ return 3734;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010010101xxxxxxxxxxxxx
+ sxth. */
+ return 2055;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1010101xxxxxxxxxxxxx
- cnt. */
- return 1461;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001010101xxxxxxxxxxxxx
+ cnt. */
+ return 3666;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011010101xxxxxxxxxxxxx
+ cnt. */
+ return 1461;
+ }
}
}
else
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0110101xxxxxxxxxxxxx
- abs. */
- return 1390;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000110101xxxxxxxxxxxxx
+ abs. */
+ return 3660;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010110101xxxxxxxxxxxxx
+ abs. */
+ return 1390;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1110101xxxxxxxxxxxxx
- not. */
- return 1853;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001110101xxxxxxxxxxxxx
+ not. */
+ return 3718;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011110101xxxxxxxxxxxxx
+ not. */
+ return 1853;
+ }
}
}
}
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0001101xxxxxxxxxxxxx
- uxtb. */
- return 2117;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000001101xxxxxxxxxxxxx
+ uxtb. */
+ return 3745;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010001101xxxxxxxxxxxxx
+ uxtb. */
+ return 2117;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1001101xxxxxxxxxxxxx
- clz. */
- return 1433;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001001101xxxxxxxxxxxxx
+ clz. */
+ return 3664;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011001101xxxxxxxxxxxxx
+ clz. */
+ return 1433;
+ }
}
}
else
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x0101101xxxxxxxxxxxxx
- uxtw. */
- return 2119;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000101101xxxxxxxxxxxxx
+ uxtw. */
+ return 3747;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010101101xxxxxxxxxxxxx
+ uxtw. */
+ return 2119;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0x1101101xxxxxxxxxxxxx
- fneg. */
- return 1571;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001101101xxxxxxxxxxxxx
+ fneg. */
+ return 3698;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011101101xxxxxxxxxxxxx
+ fneg. */
+ return 1571;
+ }
}
}
}
if (((word >> 18) & 0x1) == 0)
{
if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx000011101xxxxxxxxxxxxx
+ uxth. */
+ return 3746;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx010011101xxxxxxxxxxxxx
+ uxth. */
+ return 2118;
+ }
+ }
+ else
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx001011101xxxxxxxxxxxxx
+ cnot. */
+ return 3665;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x0xx011011101xxxxxxxxxxxxx
+ cnot. */
+ return 1460;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 20) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 000001x0xx0x0011101xxxxxxxxxxxxx
- uxth. */
- return 2118;
+ 000001x0xx00x111101xxxxxxxxxxxxx
+ neg. */
+ return 3717;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 000001x0xx0x1011101xxxxxxxxxxxxx
- cnot. */
- return 1460;
+ 000001x0xx01x111101xxxxxxxxxxxxx
+ neg. */
+ return 1850;
}
}
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x0xx0xx111101xxxxxxxxxxxxx
- neg. */
- return 1850;
- }
}
}
}
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 010001x0xx0xxx10101xxxxxxxxxxxxx
- sminp. */
- return 2244;
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0x0010101xxxxxxxxxxxxx
+ urecpe. */
+ return 3743;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0x1010101xxxxxxxxxxxxx
+ sqabs. */
+ return 3731;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0xx110101xxxxxxxxxxxxx
+ sminp. */
+ return 2244;
+ }
}
}
else
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 010001x0xx0xxx11101xxxxxxxxxxxxx
- uminp. */
- return 2369;
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0x0011101xxxxxxxxxxxxx
+ ursqrte. */
+ return 3744;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0x1011101xxxxxxxxxxxxx
+ sqneg. */
+ return 3732;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 010001x0xx0xx111101xxxxxxxxxxxxx
+ uminp. */
+ return 2369;
+ }
}
}
}
}
else
{
- if (((word >> 13) & 0x1) == 0)
+ if (((word >> 30) & 0x1) == 0)
{
- if (((word >> 30) & 0x1) == 0)
+ if (((word >> 13) & 0x1) == 0)
{
if (((word >> 14) & 0x1) == 0)
{
}
else
{
- if (((word >> 31) & 0x1) == 0)
+ if (((word >> 14) & 0x1) == 0)
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 31) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
- {
- if (((word >> 20) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx00x00x1x0xxxxxxxxxxxxx
- fcadd. */
- return 1502;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx01x00x1x0xxxxxxxxxxxxx
- faddp. */
- return 2170;
- }
- }
- else
- {
- if (((word >> 16) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx1001x0xxxxxxxxxxxxx
- fmaxnmp. */
- return 2178;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx1011x0xxxxxxxxxxxxx
- fminnmp. */
- return 2180;
- }
- }
- }
- else
- {
- if (((word >> 16) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xxx101x0xxxxxxxxxxxxx
- fmaxp. */
- return 2179;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xxx111x0xxxxxxxxxxxxx
- fminp. */
- return 2181;
- }
- }
- }
- else
- {
- if (((word >> 22) & 0x1) == 0)
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0000xxxxx1x0xxxxxxxxxxxxx
- st1b. */
- return 1967;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0100xxxxx1x0xxxxxxxxxxxxx
- st1h. */
- return 1986;
- }
- }
- else
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0010xxxxx1x0xxxxxxxxxxxxx
- st1b. */
- return 1971;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0110xxxxx1x0xxxxxxxxxxxxx
- st1h. */
- return 1992;
- }
- }
- }
- }
- }
- else
- {
- if (((word >> 14) & 0x1) == 0)
- {
- if (((word >> 30) & 0x1) == 0)
- {
- if (((word >> 31) & 0x1) == 0)
- {
- if (((word >> 4) & 0x1) == 0)
+ if (((word >> 4) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
}
}
else
- {
- if (((word >> 31) & 0x1) == 0)
- {
- if (((word >> 16) & 0x1) == 0)
- {
- if (((word >> 17) & 0x1) == 0)
- {
- if (((word >> 18) & 0x1) == 0)
- {
- if (((word >> 19) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0x0000101xxxxxxxxxxxxx
- faddqv. */
- return 3484;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0x1000101xxxxxxxxxxxxx
- fcvtnt. */
- return 2173;
- }
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx100101xxxxxxxxxxxxx
- fmaxnmqv. */
- return 3485;
- }
- }
- else
- {
- if (((word >> 18) & 0x1) == 0)
- {
- if (((word >> 22) & 0x1) == 0)
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0000xx010101xxxxxxxxxxxxx
- fcvtxnt. */
- return 2176;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0100xx010101xxxxxxxxxxxxx
- bfcvtnt. */
- return 3164;
- }
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0x10xx010101xxxxxxxxxxxxx
- fcvtnt. */
- return 2174;
- }
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx110101xxxxxxxxxxxxx
- fmaxqv. */
- return 3486;
- }
- }
- }
- else
- {
- if (((word >> 17) & 0x1) == 0)
- {
- if (((word >> 18) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx001101xxxxxxxxxxxxx
- fcvtlt. */
- return 2171;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx101101xxxxxxxxxxxxx
- fminnmqv. */
- return 3487;
- }
- }
- else
- {
- if (((word >> 18) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx011101xxxxxxxxxxxxx
- fcvtlt. */
- return 2172;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x0xx0xx111101xxxxxxxxxxxxx
- fminqv. */
- return 3488;
- }
- }
- }
- }
- else
- {
- if (((word >> 22) & 0x1) == 0)
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0000xxxxx101xxxxxxxxxxxxx
- st1b. */
- return 1968;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0100xxxxx101xxxxxxxxxxxxx
- st1h. */
- return 1987;
- }
- }
- else
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0010xxxxx101xxxxxxxxxxxxx
- st1b. */
- return 1975;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 111001x0110xxxxx101xxxxxxxxxxxxx
- st1h. */
- return 1996;
- }
- }
- }
- }
- }
- else
- {
- if (((word >> 30) & 0x1) == 0)
{
if (((word >> 31) & 0x1) == 0)
{
}
}
}
- else
+ }
+ }
+ else
+ {
+ if (((word >> 31) & 0x1) == 0)
+ {
+ if (((word >> 17) & 0x1) == 0)
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 13) & 0x1) == 0)
{
- if (((word >> 22) & 0x1) == 0)
+ if (((word >> 18) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x11001x0x000xxxx111xxxxxxxxxxxxx
- st1b. */
- return 1973;
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx00000x100xxxxxxxxxxxxx
+ fcadd. */
+ return 1502;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx01000x100xxxxxxxxxxxxx
+ faddp. */
+ return 2170;
+ }
+ }
+ else
+ {
+ if (((word >> 16) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x1000100xxxxxxxxxxxxx
+ frintn. */
+ return 3711;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x1001100xxxxxxxxxxxxx
+ frinta. */
+ return 3710;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 16) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx000110xxxxxxxxxxxxx
+ frintm. */
+ return 3713;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx001110xxxxxxxxxxxxx
+ frintx. */
+ return 3708;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 16) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01001x0xxxxxxxxxxxxx
+ fmaxnmp. */
+ return 2178;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00x11001x0xxxxxxxxxxxxx
+ frint32z. */
+ return 3703;
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1100100xxxxxxxxxxxxx
+ scvtf. */
+ return 3727;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1100110xxxxxxxxxxxxx
+ scvtf. */
+ return 3724;
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01011x0xxxxxxxxxxxxx
+ fminnmp. */
+ return 2180;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0000x11011x0xxxxxxxxxxxxx
+ frint64z. */
+ return 3707;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0100x11011x0xxxxxxxxxxxxx
+ scvtf. */
+ return 3726;
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1101100xxxxxxxxxxxxx
+ scvtf. */
+ return 3725;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1101100xxxxxxxxxxxxx
+ scvtf. */
+ return 3729;
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1101110xxxxxxxxxxxxx
+ scvtf. */
+ return 3728;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1101110xxxxxxxxxxxxx
+ scvtf. */
+ return 3730;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 16) & 0x1) == 0)
+ {
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx000000101xxxxxxxxxxxxx
+ fcvtnt. */
+ return 3678;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx010000101xxxxxxxxxxxxx
+ faddqv. */
+ return 3484;
+ }
+ }
+ else
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx001000101xxxxxxxxxxxxx
+ fcvtnt. */
+ return 2173;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx011000101xxxxxxxxxxxxx
+ frintp. */
+ return 3714;
+ }
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx000111xxxxxxxxxxxxx
+ frintz. */
+ return 3712;
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01001x1xxxxxxxxxxxxx
+ fmaxnmqv. */
+ return 3485;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00x11001x1xxxxxxxxxxxxx
+ frint32x. */
+ return 3701;
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1100101xxxxxxxxxxxxx
+ ucvtf. */
+ return 3739;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1100111xxxxxxxxxxxxx
+ ucvtf. */
+ return 3736;
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x0001101xxxxxxxxxxxxx
+ fcvtlt. */
+ return 3676;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x1001101xxxxxxxxxxxxx
+ fcvtlt. */
+ return 2171;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx001111xxxxxxxxxxxxx
+ frinti. */
+ return 3709;
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01011x1xxxxxxxxxxxxx
+ fminnmqv. */
+ return 3487;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0000x11011x1xxxxxxxxxxxxx
+ frint64x. */
+ return 3705;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0100x11011x1xxxxxxxxxxxxx
+ ucvtf. */
+ return 3738;
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1101101xxxxxxxxxxxxx
+ ucvtf. */
+ return 3737;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1101101xxxxxxxxxxxxx
+ ucvtf. */
+ return 3741;
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1101111xxxxxxxxxxxxx
+ ucvtf. */
+ return 3740;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1101111xxxxxxxxxxxxx
+ ucvtf. */
+ return 3742;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 16) & 0x1) == 0)
+ {
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 13) & 0x1) == 0)
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00xx010100xxxxxxxxxxxxx
+ fcvt. */
+ return 3672;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10xx010100xxxxxxxxxxxxx
+ fcvt. */
+ return 3674;
+ }
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0000xx010110xxxxxxxxxxxxx
+ fcvtx. */
+ return 3680;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0100xx010110xxxxxxxxxxxxx
+ bfcvt. */
+ return 3661;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10xx010110xxxxxxxxxxxxx
+ fcvt. */
+ return 3675;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0000x0010101xxxxxxxxxxxxx
+ fcvtxnt. */
+ return 3681;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0100x0010101xxxxxxxxxxxxx
+ bfcvtnt. */
+ return 3662;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x0010101xxxxxxxxxxxxx
+ fcvtnt. */
+ return 3679;
+ }
+ }
+ else
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x000001010101xxxxxxxxxxxxx
+ fcvtxnt. */
+ return 2176;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x010001010101xxxxxxxxxxxxx
+ bfcvtnt. */
+ return 3164;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x1001010101xxxxxxxxxxxxx
+ fcvtnt. */
+ return 2174;
+ }
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x0011010101xxxxxxxxxxxxx
+ fcvt. */
+ return 3670;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x1011010101xxxxxxxxxxxxx
+ fcvt. */
+ return 3671;
+ }
+ }
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx010111xxxxxxxxxxxxx
+ fcvt. */
+ return 3673;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 13) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01101x0xxxxxxxxxxxxx
+ fmaxp. */
+ return 2179;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x01101x1xxxxxxxxxxxxx
+ fmaxqv. */
+ return 3486;
+ }
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00x11101xxxxxxxxxxxxxxx
+ flogb. */
+ return 3697;
+ }
+ else
+ {
+ if (((word >> 13) & 0x1) == 0)
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1110100xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3687;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1110110xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3682;
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1110101xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3694;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x10x1110111xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3689;
+ }
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 13) & 0x1) == 0)
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 18) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0xx011100xxxxxxxxxxxxx
+ frecpx. */
+ return 3699;
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x0111100xxxxxxxxxxxxx
+ fminp. */
+ return 2181;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00x1111100xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3685;
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1111100xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3683;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1111100xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3686;
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x00x0xxx11110xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3684;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x01x0xxx11110xxxxxxxxxxxxx
+ fcvtzs. */
+ return 3688;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x0011101xxxxxxxxxxxxx
+ fcvtlt. */
+ return 3677;
+ }
+ else
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx001011101xxxxxxxxxxxxx
+ fcvtlt. */
+ return 2172;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx011011101xxxxxxxxxxxxx
+ fsqrt. */
+ return 3715;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0xx0x0111101xxxxxxxxxxxxx
+ fminqv. */
+ return 3488;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0x00x1111101xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3692;
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0010x1111101xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3690;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x0110x1111101xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3693;
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x00x0xxx11111xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3691;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x01x0xxx11111xxxxxxxxxxxxx
+ fcvtzu. */
+ return 3695;
+ }
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 13) & 0x1) == 0)
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0000xxxxx1x0xxxxxxxxxxxxx
+ st1b. */
+ return 1967;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0100xxxxx1x0xxxxxxxxxxxxx
+ st1h. */
+ return 1986;
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0010xxxxx1x0xxxxxxxxxxxxx
+ st1b. */
+ return 1971;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0110xxxxx1x0xxxxxxxxxxxxx
+ st1h. */
+ return 1992;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 14) & 0x1) == 0)
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0000xxxxx101xxxxxxxxxxxxx
+ st1b. */
+ return 1968;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x0100xxxxx101xxxxxxxxxxxxx
+ st1h. */
+ return 1987;
+ }
}
else
{
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- x11001x00100xxxx111xxxxxxxxxxxxx
+ 111001x0010xxxxx101xxxxxxxxxxxxx
st1b. */
- return 1976;
+ return 1975;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- x11001x01100xxxx111xxxxxxxxxxxxx
+ 111001x0110xxxxx101xxxxxxxxxxxxx
st1h. */
- return 1997;
+ return 1996;
}
}
}
else
{
- if (((word >> 22) & 0x1) == 0)
+ if (((word >> 20) & 0x1) == 0)
{
- if (((word >> 23) & 0x1) == 0)
+ if (((word >> 22) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- x11001x00001xxxx111xxxxxxxxxxxxx
- stnt1b. */
- return 2037;
+ 111001x0x000xxxx111xxxxxxxxxxxxx
+ st1b. */
+ return 1973;
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x11001x01001xxxx111xxxxxxxxxxxxx
- stnt1h. */
- return 2041;
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x00100xxxx111xxxxxxxxxxxxx
+ st1b. */
+ return 1976;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x01100xxxx111xxxxxxxxxxxxx
+ st1h. */
+ return 1997;
+ }
}
}
else
{
- if (((word >> 23) & 0x1) == 0)
+ if (((word >> 22) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x11001x00101xxxx111xxxxxxxxxxxxx
- st3b. */
- return 2021;
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x00001xxxx111xxxxxxxxxxxxx
+ stnt1b. */
+ return 2037;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x01001xxxx111xxxxxxxxxxxxx
+ stnt1h. */
+ return 2041;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x11001x01101xxxx111xxxxxxxxxxxxx
- st3h. */
- return 2025;
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x00101xxxx111xxxxxxxxxxxxx
+ st3b. */
+ return 2021;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 111001x01101xxxx111xxxxxxxxxxxxx
+ st3h. */
+ return 2025;
+ }
}
}
}
{
if (((word >> 19) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x1xx1x0001100xxxxxxxxxxxxx
- compact. */
- return 1467;
+ if (((word >> 20) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x10x100001100xxxxxxxxxxxxx
+ compact. */
+ return 3667;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x11x100001100xxxxxxxxxxxxx
+ compact. */
+ return 1467;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx110001100xxxxxxxxxxxxx
+ expand. */
+ return 3668;
+ }
}
else
{
{
if (((word >> 16) & 0x1) == 0)
{
- if (((word >> 19) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 18) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x1xx100xx0101xxxxxxxxxxxxx
- lasta. */
- return 1613;
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx100000101xxxxxxxxxxxxx
+ lasta. */
+ return 1613;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx110000101xxxxxxxxxxxxx
+ clasta. */
+ return 1428;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx1x1000101xxxxxxxxxxxxx
+ cpy. */
+ return 1469;
+ }
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 000001x1xx110xx0101xxxxxxxxxxxxx
- clasta. */
- return 1428;
+ 000001x1xx1xx100101xxxxxxxxxxxxx
+ revb. */
+ return 3720;
}
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x1xx1x1xx0101xxxxxxxxxxxxx
- cpy. */
- return 1469;
+ if (((word >> 19) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx1x0x10101xxxxxxxxxxxxx
+ revw. */
+ return 3722;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx1x1x10101xxxxxxxxxxxxx
+ revd. */
+ return 3723;
+ }
}
}
else
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 000001x1xx10xxx1101xxxxxxxxxxxxx
- lastb. */
- return 1615;
+ if (((word >> 18) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx10x001101xxxxxxxxxxxxx
+ lastb. */
+ return 1615;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx11x001101xxxxxxxxxxxxx
+ clastb. */
+ return 1431;
+ }
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 000001x1xx1xx101101xxxxxxxxxxxxx
+ revh. */
+ return 3721;
+ }
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 000001x1xx11xxx1101xxxxxxxxxxxxx
- clastb. */
- return 1431;
+ 000001x1xx1xxx11101xxxxxxxxxxxxx
+ rbit. */
+ return 3719;
}
}
}
{
if (((word >> 19) & 0x1) == 0)
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 18) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
+ if (((word >> 20) & 0x1) == 0)
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1xx010000101xxxxxxxxxxxxx
- scvtf. */
- return 1914;
+ 011001x1xx000010101xxxxxxxxxxxxx
+ frintm. */
+ return 1581;
}
}
else
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 22) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1xx000100101xxxxxxxxxxxxx
- frinta. */
- return 1579;
+ 011001x1x00100x0101xxxxxxxxxxxxx
+ frint32z. */
+ return 3702;
}
else
{
- if (((word >> 22) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1x0010100101xxxxxxxxxxxxx
+ 011001x1x1010000101xxxxxxxxxxxxx
scvtf. */
- return 1913;
+ return 1914;
}
else
{
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x101010100101xxxxxxxxxxxxx
- scvtf. */
- return 1912;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x111010100101xxxxxxxxxxxxx
- scvtf. */
- return 1916;
- }
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1x1010010101xxxxxxxxxxxxx
+ scvtf. */
+ return 1911;
}
}
}
}
else
{
- if (((word >> 18) & 0x1) == 0)
+ if (((word >> 20) & 0x1) == 0)
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1xx000010101xxxxxxxxxxxxx
- frintm. */
- return 1581;
+ 011001x1xx000100101xxxxxxxxxxxxx
+ frinta. */
+ return 1579;
}
else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx010010101xxxxxxxxxxxxx
- scvtf. */
- return 1911;
- }
- }
- else
- {
- if (((word >> 20) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
frintx. */
return 1584;
}
- else
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
{
if (((word >> 23) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x10x010110101xxxxxxxxxxxxx
- scvtf. */
- return 1915;
+ 011001x1000101x0101xxxxxxxxxxxxx
+ frint64z. */
+ return 3706;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x11x010110101xxxxxxxxxxxxx
+ 011001x1100101x0101xxxxxxxxxxxxx
scvtf. */
- return 1917;
+ return 1913;
+ }
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x101010100101xxxxxxxxxxxxx
+ scvtf. */
+ return 1912;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x111010100101xxxxxxxxxxxxx
+ scvtf. */
+ return 1916;
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x101010110101xxxxxxxxxxxxx
+ scvtf. */
+ return 1915;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x111010110101xxxxxxxxxxxxx
+ scvtf. */
+ return 1917;
+ }
}
}
}
}
else
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 18) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
+ if (((word >> 19) & 0x1) == 0)
{
- if (((word >> 19) & 0x1) == 0)
+ if (((word >> 20) & 0x1) == 0)
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 17) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1xx010001101xxxxxxxxxxxxx
- ucvtf. */
- return 2067;
+ 011001x1xx000011101xxxxxxxxxxxxx
+ frintz. */
+ return 1585;
+ }
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1x00100x1101xxxxxxxxxxxxx
+ frint32x. */
+ return 3700;
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1x1010001101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2067;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1x1010011101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2064;
+ }
}
}
- else
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
{
if (((word >> 20) & 0x1) == 0)
{
return 1535;
}
}
- }
- else
- {
- if (((word >> 19) & 0x1) == 0)
+ else
{
- if (((word >> 22) & 0x1) == 0)
+ if (((word >> 20) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1x00x0101101xxxxxxxxxxxxx
- ucvtf. */
- return 2066;
+ 011001x1xx001011101xxxxxxxxxxxxx
+ fcvt. */
+ return 1523;
}
else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1xx011011101xxxxxxxxxxxxx
+ fcvtzu. */
+ return 1531;
+ }
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 19) & 0x1) == 0)
+ {
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x1xx0001x1101xxxxxxxxxxxxx
+ frinti. */
+ return 1580;
+ }
+ else
+ {
+ if (((word >> 22) & 0x1) == 0)
{
if (((word >> 23) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1010x0101101xxxxxxxxxxxxx
- ucvtf. */
- return 2065;
+ 011001x1000101x1101xxxxxxxxxxxxx
+ frint64x. */
+ return 3704;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 011001x1110x0101101xxxxxxxxxxxxx
+ 011001x1100101x1101xxxxxxxxxxxxx
ucvtf. */
- return 2069;
+ return 2066;
+ }
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x101010101101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2065;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x111010101101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2069;
+ }
+ }
+ else
+ {
+ if (((word >> 23) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x101010111101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2068;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 011001x111010111101xxxxxxxxxxxxx
+ ucvtf. */
+ return 2070;
+ }
}
}
}
- else
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
{
if (((word >> 20) & 0x1) == 0)
{
}
}
}
- }
- }
- else
- {
- if (((word >> 18) & 0x1) == 0)
- {
- if (((word >> 19) & 0x1) == 0)
- {
- if (((word >> 20) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx000011101xxxxxxxxxxxxx
- frintz. */
- return 1585;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx010011101xxxxxxxxxxxxx
- ucvtf. */
- return 2064;
- }
- }
- else
- {
- if (((word >> 20) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx001011101xxxxxxxxxxxxx
- fcvt. */
- return 1523;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx011011101xxxxxxxxxxxxx
- fcvtzu. */
- return 1531;
- }
- }
- }
- else
- {
- if (((word >> 19) & 0x1) == 0)
- {
- if (((word >> 20) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x1xx000111101xxxxxxxxxxxxx
- frinti. */
- return 1580;
- }
- else
- {
- if (((word >> 23) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x10x010111101xxxxxxxxxxxxx
- ucvtf. */
- return 2068;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 011001x11x010111101xxxxxxxxxxxxx
- ucvtf. */
- return 2070;
- }
- }
- }
else
{
if (((word >> 23) & 0x1) == 0)
}
else
{
- if (((word >> 10) & 0x1) == 0)
- {
- if (((word >> 11) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 001001x1xx1xxx1010xx000xxxxxxxxx
- sqdecp. */
- return 1944;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 001001x1xx1xxx1010xx100xxxxxxxxx
- sqdecp. */
- return 1946;
- }
- }
- else
+ if (((word >> 19) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xxx1010xxx10xxxxxxxxx
- sqdecp. */
- return 1945;
+ 001001x1xx1x0x1010xxxx0xxxxxxxxx
+ lastp. */
+ return 3716;
}
- }
- }
- else
- {
- if (((word >> 10) & 0x1) == 0)
- {
- if (((word >> 11) & 0x1) == 0)
+ else
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 10) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
+ if (((word >> 11) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xx00110xx000xxxxxxxxx
- uqincp. */
- return 2107;
+ 001001x1xx1x1x1010xx000xxxxxxxxx
+ sqdecp. */
+ return 1944;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xx10110xx000xxxxxxxxx
- decp. */
- return 1478;
+ 001001x1xx1x1x1010xx100xxxxxxxxx
+ sqdecp. */
+ return 1946;
}
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xxx1110xx000xxxxxxxxx
- uqdecp. */
- return 2093;
+ 001001x1xx1x1x1010xxx10xxxxxxxxx
+ sqdecp. */
+ return 1945;
}
}
- else
+ }
+ }
+ else
+ {
+ if (((word >> 17) & 0x1) == 0)
+ {
+ if (((word >> 18) & 0x1) == 0)
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 19) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1x000110xxxx0xxxxxxxxx
+ firstp. */
+ return 3696;
+ }
+ else
+ {
+ if (((word >> 10) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 001001x1xx1xx00110xx100xxxxxxxxx
- uqincp. */
- return 2108;
+ if (((word >> 11) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1x100110xx000xxxxxxxxx
+ uqincp. */
+ return 2107;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1x100110xx100xxxxxxxxx
+ uqincp. */
+ return 2108;
+ }
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xx10110xx100xxxxxxxxx
- decp. */
- return 1479;
+ 001001x1xx1x100110xxx10xxxxxxxxx
+ uqincp. */
+ return 2109;
}
}
+ }
+ else
+ {
+ if (((word >> 11) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1xx10110xx0x0xxxxxxxxx
+ decp. */
+ return 1478;
+ }
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- 001001x1xx1xxx1110xx100xxxxxxxxx
- uqdecp. */
- return 2094;
+ 001001x1xx1xx10110xx1x0xxxxxxxxx
+ decp. */
+ return 1479;
}
}
}
else
{
- if (((word >> 17) & 0x1) == 0)
+ if (((word >> 10) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- 001001x1xx1xxx0110xxx10xxxxxxxxx
- uqincp. */
- return 2109;
+ if (((word >> 11) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1xxx1110xx000xxxxxxxxx
+ uqdecp. */
+ return 2093;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ 001001x1xx1xxx1110xx100xxxxxxxxx
+ uqdecp. */
+ return 2094;
+ }
}
else
{
case 3399: return NULL; /* bfmax --> NULL. */
case 3012: value = 3566; break; /* bfscale --> fscale. */
case 3566: return NULL; /* fscale --> NULL. */
+ case 3015: value = 3748; break; /* bfmul --> fmul. */
+ case 3748: return NULL; /* fmul --> NULL. */
+ case 3016: value = 3749; break; /* bfmul --> fmul. */
+ case 3749: return NULL; /* fmul --> NULL. */
case 2575: value = 3401; break; /* fmax --> bfmax. */
case 3401: return NULL; /* bfmax --> NULL. */
case 3014: value = 3568; break; /* bfscale --> fscale. */
case 3411: return NULL; /* bfminnm --> NULL. */
case 2587: value = 3413; break; /* fminnm --> bfminnm. */
case 3413: return NULL; /* bfminnm --> NULL. */
+ case 3017: value = 3750; break; /* bfmul --> fmul. */
+ case 3750: return NULL; /* fmul --> NULL. */
+ case 3018: value = 3751; break; /* bfmul --> fmul. */
+ case 3751: return NULL; /* fmul --> NULL. */
case 12: value = 19; break; /* add --> addg. */
case 19: value = 3305; break; /* addg --> smax. */
case 3305: value = 3306; break; /* smax --> umax. */
variant = extract_field (FLD_SVE_sz2, inst->value, 0);
break;
+ case sve_size_sd3:
+ variant = extract_field (FLD_SVE_sz3, inst->value, 0);
+ break;
+
+ case sve_size_sd4:
+ variant = extract_field (FLD_SVE_sz4, inst->value, 0);
+ break;
+
case sve_size_hsd2:
i = extract_field (FLD_SVE_size, inst->value, 0);
if (i < 1)
variant = i - 1;
break;
+ case sve_size_hsd3:
+ i = extract_field (FLD_len, inst->value, 0);
+ if (i < 1)
+ return false;
+ variant = i - 1;
+ break;
+
case sve_size_13:
/* Ignore low bit of this field since that is set in the opcode for
instructions of this iclass. */
{ 17, 2 }, /* SVE_size: 2-bit element size, bits [18,17]. */
{ 22, 1 }, /* SVE_sz: 1-bit element size select. */
{ 30, 1 }, /* SVE_sz2: 1-bit element size select. */
+ { 17, 1 }, /* SVE_sz3: 1-bit element size select. */
+ { 14, 1 }, /* SVE_sz4: 1-bit element size select. */
{ 16, 4 }, /* SVE_tsz: triangular size select. */
{ 22, 2 }, /* SVE_tszh: triangular size select high, bits [23,22]. */
{ 8, 2 }, /* SVE_tszl_8: triangular size select low, bits [9,8]. */
FLD_SVE_size,
FLD_SVE_sz,
FLD_SVE_sz2,
+ FLD_SVE_sz3,
+ FLD_SVE_sz4,
FLD_SVE_tsz,
FLD_SVE_tszh,
FLD_SVE_tszl_8,
{ \
QLF3(S_D,P_Z,S_D), \
}
+#define OP_SVE_DZH \
+{ \
+ QLF3(S_D,P_Z,S_H), \
+}
+#define OP_SVE_DZS \
+{ \
+ QLF3(S_D,P_Z,S_S), \
+}
#define OP_SVE_DZU \
{ \
QLF3(S_D,P_Z,NIL), \
{ \
QLF3(S_H,NIL,NIL), \
}
+#define OP_SVE_HZD \
+{ \
+ QLF3(S_H,P_Z,S_D), \
+}
+#define OP_SVE_HZH \
+{ \
+ QLF3(S_H,P_Z,S_H), \
+}
+#define OP_SVE_HZS \
+{ \
+ QLF3(S_H,P_Z,S_S), \
+}
#define OP_SVE_HZU \
{ \
QLF3(S_H,P_Z,NIL), \
{ \
QLF3(S_Q,NIL,NIL), \
}
+#define OP_SVE_QZQ \
+{ \
+ QLF3(S_Q,P_Z,S_Q), \
+}
#define OP_SVE_QZU \
{ \
QLF3(S_Q,P_Z,NIL), \
{ \
QLF3(S_S,NIL,NIL), \
}
+#define OP_SVE_SZD \
+{ \
+ QLF3(S_S,P_Z,S_D), \
+}
+#define OP_SVE_SZH \
+{ \
+ QLF3(S_S,P_Z,S_H), \
+}
#define OP_SVE_SZS \
{ \
QLF3(S_S,P_Z,S_S), \
QLF4(S_S,NIL,S_S,S_S), \
QLF4(S_D,NIL,S_D,S_D), \
}
+#define OP_SVE_VUV_BH \
+{ \
+ QLF3(S_B,NIL,S_B), \
+ QLF3(S_H,NIL,S_H), \
+}
#define OP_SVE_VUV_BHSD \
{ \
QLF3(S_B,NIL,S_B), \
QLF4(S_S,X,X,NIL), \
QLF4(S_D,X,X,NIL), \
}
+#define OP_SVE_VZV_BHSD \
+{ \
+ QLF3(S_B,P_Z,S_B), \
+ QLF3(S_H,P_Z,S_H), \
+ QLF3(S_S,P_Z,S_S), \
+ QLF3(S_D,P_Z,S_D), \
+}
#define OP_SVE_VZVD_BHS \
{ \
QLF4(S_B,P_Z,S_B,S_D), \
AARCH64_FEATURES (2, SVE2p1_SME2, SVE);
static const aarch64_feature_set aarch64_feature_sve2p1_sme2p1 =
AARCH64_FEATURES (2, SVE2p1_SME2p1, SVE);
+static const aarch64_feature_set aarch64_feature_sme2p2 =
+ AARCH64_FEATURES (2, SME2p2, SME);
+static const aarch64_feature_set aarch64_feature_sve_sme2p2 =
+ AARCH64_FEATURES (2, SVE_SME2p2, SVE);
+static const aarch64_feature_set aarch64_feature_sve2p2_sme2p2 =
+ AARCH64_FEATURES (2, SVE2p2_SME2p2, SVE);
#define CORE &aarch64_feature_v8
#define FP &aarch64_feature_fp
#define SVE2p1_SME &aarch64_feature_sve2p1_sme
#define SVE2p1_SME2 &aarch64_feature_sve2p1_sme2
#define SVE2p1_SME2p1 &aarch64_feature_sve2p1_sme2p1
+#define SME2p2 &aarch64_feature_sme2p2
+#define SVE_SME2p2 &aarch64_feature_sve_sme2p2
+#define SVE2p2_SME2p2 &aarch64_feature_sve2p2_sme2p2
#define CORE_INSN(NAME,OPCODE,MASK,CLASS,OP,OPS,QUALS,FLAGS) \
{ NAME, OPCODE, MASK, CLASS, OP, CORE, OPS, QUALS, FLAGS, 0, 0, NULL }
#define SVE2p1_SME2p1_INSNC(NAME,OPCODE,MASK,CLASS,OP,OPS,QUALS,FLAGS,CONSTRAINTS,TIED) \
{ NAME, OPCODE, MASK, CLASS, OP, SVE2p1_SME2p1, OPS, QUALS, \
F_STRICT | FLAGS, CONSTRAINTS, TIED, NULL }
+#define SVE_SME2p2_INSN(NAME,OPCODE,MASK,CLASS,OP,OPS,QUALS,FLAGS,TIED) \
+ { NAME, OPCODE, MASK, CLASS, OP, SVE_SME2p2, OPS, QUALS, \
+ FLAGS | F_STRICT, 0, TIED, NULL }
+#define SVE2p2_SME2p2_INSN(NAME,OPCODE,MASK,CLASS,OPS,QUALS,FLAGS,CONSTRAINTS,TIED) \
+ { NAME, OPCODE, MASK, CLASS, 0, SVE2p2_SME2p2, OPS, QUALS, \
+ F_STRICT | FLAGS, CONSTRAINTS, TIED, NULL }
+#define SME2p2_INSN(NAME,OPCODE,MASK,CLASS,OPS,QUALS,FLAGS,TIED) \
+ { NAME, OPCODE, MASK, CLASS, 0, SME2p2, OPS, QUALS, \
+ F_STRICT | FLAGS, 0, TIED, NULL }
#define MOPS_CPY_OP1_OP2_PME_INSN(NAME, OPCODE, MASK, FLAGS, CONSTRAINTS) \
MOPS_INSN (NAME, OPCODE, MASK, 0, \
_SVE_INSN ("cnth", 0x0460e000, 0xfff0fc00, sve_misc, 0, OP2 (Rd, SVE_PATTERN_SCALED), OP_SVE_XU, F_OPD1_OPT | F_DEFAULT(31), 0),
_SVE_INSN ("cntp", 0x25208000, 0xff3fc200, sve_size_bhsd, 0, OP3 (Rd, SVE_Pg4_10, SVE_Pn), OP_SVE_XUV_BHSD, 0, 0),
_SVE_INSN ("cntw", 0x04a0e000, 0xfff0fc00, sve_misc, 0, OP2 (Rd, SVE_PATTERN_SCALED), OP_SVE_XU, F_OPD1_OPT | F_DEFAULT(31), 0),
- _SVE_INSN ("compact", 0x05a18000, 0xffbfe000, sve_size_sd, 0, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VUV_SD, 0, 0),
+ SVE_SME2p2_INSN ("compact", 0x05a18000, 0xffbfe000, sve_size_sd, 0, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VUV_SD, 0, 0),
_SVE_INSNC ("cpy", 0x05208000, 0xff3fe000, sve_size_bhsd, 0, OP3 (SVE_Zd, SVE_Pg3, SVE_Vn), OP_SVE_VMV_BHSD, F_HAS_ALIAS, C_SCAN_MOVPRFX, 0),
_SVE_INSNC ("cpy", 0x0528a000, 0xff3fe000, sve_size_bhsd, 0, OP3 (SVE_Zd, SVE_Pg3, Rn_SP), OP_SVE_VMR_BHSD, F_HAS_ALIAS, C_SCAN_MOVPRFX, 0),
_SVE_INSNC ("cpy", 0x05100000, 0xff308000, sve_cpy, 0, OP3 (SVE_Zd, SVE_Pg4_16, SVE_ASIMM), OP_SVE_VPU_BHSD, F_HAS_ALIAS, C_SCAN_MOVPRFX, 0),
SME_F8F32_INSNC ("fvdotb", 0xc1d00800, 0xfff09830, sme_misc, OP3 (SME_ZA_array_off3_0, SME_Znx2, SME_Zm_INDEX2_3), OP_SVE_VVV_S_B, F_OD (4) | F_VG_REQ, 0),
SME_F8F32_INSNC ("fvdott", 0xc1d00810, 0xfff09830, sme_misc, OP3 (SME_ZA_array_off3_0, SME_Znx2, SME_Zm_INDEX2_3), OP_SVE_VVV_S_B, F_OD (4) | F_VG_REQ, 0),
+ /* SVE2p2 / SME2p2 instructions. */
+ SVE2p2_SME2p2_INSN ("abs", 0x0406a000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("bfcvt", 0x649ac000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("bfcvtnt", 0x6482a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("cls", 0x0408a000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("clz", 0x0409a000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("cnot", 0x040ba000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("cnt", 0x040aa000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("compact", 0x05218000, 0xffbfe000, sve_size_bh, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VUV_BH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("expand", 0x05318000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VUV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fabs", 0x040ca000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x649aa000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x64daa000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x649a8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x64dae000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x64da8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvt", 0x64dac000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtlt", 0x6481a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtlt", 0x64c3a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtnt", 0x6480a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtnt", 0x64c2a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtx", 0x641ac000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtxnt", 0x6402a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x645ec000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x645f8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x645fc000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x649f8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x64df8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x64de8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzs", 0x64dfc000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x645ee000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x645fa000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x645fe000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x649fa000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x64dfa000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x64dea000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fcvtzu", 0x64dfe000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("firstp", 0x25218000, 0xff3fc200, sve_size_bhsd, OP3 (Rd, SVE_Pg4_10, SVE_Pn), OP_SVE_XUV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("flogb", 0x641e8000, 0xffff8000, sve_size_hsd3, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fneg", 0x040da000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frecpx", 0x641b8000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frint32x", 0x6511a000, 0xfffde000, sve_size_sd3, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VMV_SD, 0, C_SCAN_MOVPRFX, 0),
+ SVE2p2_SME2p2_INSN ("frint32x", 0x641ca000, 0xffffa000, sve_size_sd4, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frint32z", 0x6510a000, 0xfffde000, sve_size_sd3, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VMV_SD, 0, C_SCAN_MOVPRFX, 0),
+ SVE2p2_SME2p2_INSN ("frint32z", 0x641c8000, 0xffffa000, sve_size_sd4, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frint64x", 0x6515a000, 0xfffde000, sve_size_sd3, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VMV_SD, 0, C_SCAN_MOVPRFX, 0),
+ SVE2p2_SME2p2_INSN ("frint64x", 0x641da000, 0xffffa000, sve_size_sd4, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frint64z", 0x6514a000, 0xfffde000, sve_size_sd3, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VMV_SD, 0, C_SCAN_MOVPRFX, 0),
+ SVE2p2_SME2p2_INSN ("frint64z", 0x641d8000, 0xffffa000, sve_size_sd4, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frintx", 0x6419c000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frinti", 0x6419e000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frinta", 0x64198000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frintn", 0x64188000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frintz", 0x6418e000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frintm", 0x6418c000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("frintp", 0x6418a000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("fsqrt", 0x641ba000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("lastp", 0x25228000, 0xff3fc200, sve_size_bhsd, OP3 (Rd, SVE_Pg4_10, SVE_Pn), OP_SVE_XUV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("neg", 0x0407a000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("not", 0x040ea000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("rbit", 0x0527a000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("revb", 0x0524a000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("revh", 0x05a5a000, 0xffbfe000, sve_size_sd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("revw", 0x05e6a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("revd", 0x052ea000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_QZQ, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x645cc000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x645d8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x649d8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x64dc8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x645dc000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x64dd8000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("scvtf", 0x64ddc000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("sqabs", 0x440aa000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("sqneg", 0x440ba000, 0xff3fe000, sve_size_bhsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_BHSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("sxtb", 0x0400a000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("sxth", 0x0482a000, 0xffbfe000, sve_size_sd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("sxtw", 0x04c4a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x645ce000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZH, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x645da000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x649da000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x64dca000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x645de000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_HZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x64dda000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ucvtf", 0x64dde000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("urecpe", 0x4482a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("ursqrte", 0x4483a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_SZS, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("uxtb", 0x0401a000, 0xff3fe000, sve_size_hsd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_HSD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("uxth", 0x0483a000, 0xffbfe000, sve_size_sd, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_VZV_SD, 0, 0, 0),
+ SVE2p2_SME2p2_INSN ("uxtw", 0x04c5a000, 0xffffe000, sve_misc, OP3 (SVE_Zd, SVE_Pg3, SVE_Zn), OP_SVE_DZD, 0, 0, 0),
+
+ /* SME2p2 instructions. */
+ SME2p2_INSN ("fmul", 0xc120e800, 0xff21fc21, sme_size_22_hsd, OP3 (SME_Zdnx2, SME_Znx2, SME_Zm_17), OP_SVE_VVV_HSD, 0, 0),
+ SME2p2_INSN ("fmul", 0xc121e800, 0xff21fc63, sme_size_22_hsd, OP3 (SME_Zdnx4, SME_Znx4, SME_Zm_17), OP_SVE_VVV_HSD, 0, 0),
+ SME2p2_INSN ("fmul", 0xc120e400, 0xff21fc21, sme_size_22_hsd, OP3 (SME_Zdnx2, SME_Znx2, SME_Zmx2), OP_SVE_VVV_HSD, 0, 0),
+ SME2p2_INSN ("fmul", 0xc121e400, 0xff21fc63, sme_size_22_hsd, OP3 (SME_Zdnx4, SME_Znx4, SME_Zmx4), OP_SVE_VVV_HSD, 0, 0),
+
{0, 0, 0, 0, 0, 0, {}, {}, 0, 0, 0, NULL},
};