public inbox for binutils-cvs@sourceware.org
 help / color / mirror / Atom feed
* [binutils-gdb] aarch64: Add the SME2 FP<->int conversion instructions
@ 2023-03-30 10:15 Richard Sandiford
  0 siblings, 0 replies; only message in thread
From: Richard Sandiford @ 2023-03-30 10:15 UTC (permalink / raw)
  To: bfd-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=28ef4f20c06ed3f6deded8363bcc41b9ba1ac155

commit 28ef4f20c06ed3f6deded8363bcc41b9ba1ac155
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Thu Mar 30 11:09:15 2023 +0100

    aarch64: Add the SME2 FP<->int conversion instructions
    
    This patch adds the SME2 versions of the FP<->integer conversion
    instructions FCVT* and *CVTF.  It also adds FP rounding instructions
    FRINT*, which share the same format.

Diff:
---
 gas/testsuite/gas/aarch64/sme2-23-invalid.d |    3 +
 gas/testsuite/gas/aarch64/sme2-23-invalid.l |   14 +
 gas/testsuite/gas/aarch64/sme2-23-invalid.s |    8 +
 gas/testsuite/gas/aarch64/sme2-23-noarch.d  |    3 +
 gas/testsuite/gas/aarch64/sme2-23-noarch.l  |   65 ++
 gas/testsuite/gas/aarch64/sme2-23.d         |   73 ++
 gas/testsuite/gas/aarch64/sme2-23.s         |   79 ++
 opcodes/aarch64-dis-2.c                     | 1676 +++++++++++++++------------
 opcodes/aarch64-tbl.h                       |   20 +
 9 files changed, 1191 insertions(+), 750 deletions(-)

diff --git a/gas/testsuite/gas/aarch64/sme2-23-invalid.d b/gas/testsuite/gas/aarch64/sme2-23-invalid.d
new file mode 100644
index 00000000000..b9deb8e1c04
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23-invalid.d
@@ -0,0 +1,3 @@
+#as: -march=armv8-a
+#source: sme2-23-invalid.s
+#error_output: sme2-23-invalid.l
diff --git a/gas/testsuite/gas/aarch64/sme2-23-invalid.l b/gas/testsuite/gas/aarch64/sme2-23-invalid.l
new file mode 100644
index 00000000000..b3e9312cd0f
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23-invalid.l
@@ -0,0 +1,14 @@
+[^ :]+: Assembler messages:
+[^ :]+:[0-9]+: Error: expected a register or register list at operand 1 -- `fcvtzs 0,{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: expected '{' at operand 2 -- `fcvtzs {z0\.s,z1\.s},0'
+[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtzs {z0\.s,z1\.s},{z0\.h-z1\.h}'
+[^ :]+:[0-9]+: Info:    did you mean this\?
+[^ :]+:[0-9]+: Info:    	fcvtzs {z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtzs {z30\.h,z31\.h},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Info:    did you mean this\?
+[^ :]+:[0-9]+: Info:    	fcvtzs {z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^ :]+:[0-9]+: Error: operand mismatch -- `fcvtzs {z0\.d,z1\.d},{z30\.d-z31\.d}'
+[^ :]+:[0-9]+: Info:    did you mean this\?
+[^ :]+:[0-9]+: Info:    	fcvtzs {z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^ :]+:[0-9]+: Error: start register out of range at operand 1 -- `fcvtzs {z1\.s,z2\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: start register out of range at operand 2 -- `fcvtzs {z0\.s,z1\.s},{z29\.s-z30\.s}'
diff --git a/gas/testsuite/gas/aarch64/sme2-23-invalid.s b/gas/testsuite/gas/aarch64/sme2-23-invalid.s
new file mode 100644
index 00000000000..45ee01ea85e
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23-invalid.s
@@ -0,0 +1,8 @@
+	fcvtzs	0, { z0.s - z1.s }
+	fcvtzs	{ z0.s, z1.s }, 0
+
+	fcvtzs	{ z0.s, z1.s }, { z0.h - z1.h }
+	fcvtzs	{ z30.h, z31.h }, { z0.s - z1.s }
+	fcvtzs	{ z0.d, z1.d }, { z30.d - z31.d }
+	fcvtzs	{ z1.s, z2.s }, { z30.s - z31.s }
+	fcvtzs	{ z0.s, z1.s }, { z29.s - z30.s }
diff --git a/gas/testsuite/gas/aarch64/sme2-23-noarch.d b/gas/testsuite/gas/aarch64/sme2-23-noarch.d
new file mode 100644
index 00000000000..a30446f6aa7
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23-noarch.d
@@ -0,0 +1,3 @@
+#as: -march=armv8-a+sme
+#source: sme2-23.s
+#error_output: sme2-23-noarch.l
diff --git a/gas/testsuite/gas/aarch64/sme2-23-noarch.l b/gas/testsuite/gas/aarch64/sme2-23-noarch.l
new file mode 100644
index 00000000000..033e87a5b72
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23-noarch.l
@@ -0,0 +1,65 @@
+[^ :]+: Assembler messages:
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzs {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z12\.s,z13\.s},{z14\.s-z15\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `fcvtzu {z16\.s-z19\.s},{z12\.s-z15\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frinta {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintm {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintn {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `frintp {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `scvtf {z24\.s-z27\.s},{z8\.s-z11\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z0\.s,z1\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z30\.s,z31\.s},{z0\.s-z1\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z0\.s,z1\.s},{z30\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z10\.s,z11\.s},{z26\.s-z27\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z0\.s-z3\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z28\.s-z31\.s},{z0\.s-z3\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z0\.s-z3\.s},{z28\.s-z31\.s}'
+[^ :]+:[0-9]+: Error: selected processor does not support `ucvtf {z24\.s-z27\.s},{z8\.s-z11\.s}'
diff --git a/gas/testsuite/gas/aarch64/sme2-23.d b/gas/testsuite/gas/aarch64/sme2-23.d
new file mode 100644
index 00000000000..d82704b1874
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23.d
@@ -0,0 +1,73 @@
+#as: -march=armv8-a+sme2
+#objdump: -dr
+
+[^:]+:     file format .*
+
+
+[^:]+:
+
+[^:]+:
+[^:]+:	c121e000 	fcvtzs	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c121e01e 	fcvtzs	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c121e3c0 	fcvtzs	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c121e34a 	fcvtzs	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c131e000 	fcvtzs	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c131e01c 	fcvtzs	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c131e380 	fcvtzs	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c131e118 	fcvtzs	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c121e020 	fcvtzu	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c121e03e 	fcvtzu	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c121e3e0 	fcvtzu	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c121e1ec 	fcvtzu	{z12\.s-z13\.s}, {z14\.s-z15\.s}
+[^:]+:	c131e020 	fcvtzu	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c131e03c 	fcvtzu	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c131e3a0 	fcvtzu	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c131e1b0 	fcvtzu	{z16\.s-z19\.s}, {z12\.s-z15\.s}
+[^:]+:	c1ace000 	frinta	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c1ace01e 	frinta	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c1ace3c0 	frinta	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c1ace34a 	frinta	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c1bce000 	frinta	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c1bce01c 	frinta	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c1bce380 	frinta	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c1bce118 	frinta	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c1aae000 	frintm	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c1aae01e 	frintm	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c1aae3c0 	frintm	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c1aae34a 	frintm	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c1bae000 	frintm	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c1bae01c 	frintm	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c1bae380 	frintm	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c1bae118 	frintm	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c1a8e000 	frintn	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c1a8e01e 	frintn	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c1a8e3c0 	frintn	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c1a8e34a 	frintn	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c1b8e000 	frintn	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c1b8e01c 	frintn	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c1b8e380 	frintn	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c1b8e118 	frintn	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c1a9e000 	frintp	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c1a9e01e 	frintp	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c1a9e3c0 	frintp	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c1a9e34a 	frintp	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c1b9e000 	frintp	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c1b9e01c 	frintp	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c1b9e380 	frintp	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c1b9e118 	frintp	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c122e000 	scvtf	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c122e01e 	scvtf	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c122e3c0 	scvtf	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c122e34a 	scvtf	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c132e000 	scvtf	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c132e01c 	scvtf	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c132e380 	scvtf	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c132e118 	scvtf	{z24\.s-z27\.s}, {z8\.s-z11\.s}
+[^:]+:	c122e020 	ucvtf	{z0\.s-z1\.s}, {z0\.s-z1\.s}
+[^:]+:	c122e03e 	ucvtf	{z30\.s-z31\.s}, {z0\.s-z1\.s}
+[^:]+:	c122e3e0 	ucvtf	{z0\.s-z1\.s}, {z30\.s-z31\.s}
+[^:]+:	c122e36a 	ucvtf	{z10\.s-z11\.s}, {z26\.s-z27\.s}
+[^:]+:	c132e020 	ucvtf	{z0\.s-z3\.s}, {z0\.s-z3\.s}
+[^:]+:	c132e03c 	ucvtf	{z28\.s-z31\.s}, {z0\.s-z3\.s}
+[^:]+:	c132e3a0 	ucvtf	{z0\.s-z3\.s}, {z28\.s-z31\.s}
+[^:]+:	c132e138 	ucvtf	{z24\.s-z27\.s}, {z8\.s-z11\.s}
diff --git a/gas/testsuite/gas/aarch64/sme2-23.s b/gas/testsuite/gas/aarch64/sme2-23.s
new file mode 100644
index 00000000000..55ec0f8e203
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme2-23.s
@@ -0,0 +1,79 @@
+	fcvtzs	{ z0.s, z1.s }, { z0.s - z1.s }
+	fcvtzs	{ z30.s, z31.s }, { z0.s - z1.s }
+	fcvtzs	{ z0.s, z1.s }, { z30.s - z31.s }
+	fcvtzs	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	fcvtzs	{ z0.s - z3.s }, { z0.s - z3.s }
+	fcvtzs	{ z28.s - z31.s }, { z0.s - z3.s }
+	fcvtzs	{ z0.s - z3.s }, { z28.s - z31.s }
+	fcvtzs	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	fcvtzu	{ z0.s, z1.s }, { z0.s - z1.s }
+	fcvtzu	{ z30.s, z31.s }, { z0.s - z1.s }
+	fcvtzu	{ z0.s, z1.s }, { z30.s - z31.s }
+	fcvtzu	{ z12.s, z13.s }, { z14.s - z15.s }
+
+	fcvtzu	{ z0.s - z3.s }, { z0.s - z3.s }
+	fcvtzu	{ z28.s - z31.s }, { z0.s - z3.s }
+	fcvtzu	{ z0.s - z3.s }, { z28.s - z31.s }
+	fcvtzu	{ z16.s - z19.s }, { z12.s - z15.s }
+
+	frinta	{ z0.s, z1.s }, { z0.s - z1.s }
+	frinta	{ z30.s, z31.s }, { z0.s - z1.s }
+	frinta	{ z0.s, z1.s }, { z30.s - z31.s }
+	frinta	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	frinta	{ z0.s - z3.s }, { z0.s - z3.s }
+	frinta	{ z28.s - z31.s }, { z0.s - z3.s }
+	frinta	{ z0.s - z3.s }, { z28.s - z31.s }
+	frinta	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	frintm	{ z0.s, z1.s }, { z0.s - z1.s }
+	frintm	{ z30.s, z31.s }, { z0.s - z1.s }
+	frintm	{ z0.s, z1.s }, { z30.s - z31.s }
+	frintm	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	frintm	{ z0.s - z3.s }, { z0.s - z3.s }
+	frintm	{ z28.s - z31.s }, { z0.s - z3.s }
+	frintm	{ z0.s - z3.s }, { z28.s - z31.s }
+	frintm	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	frintn	{ z0.s, z1.s }, { z0.s - z1.s }
+	frintn	{ z30.s, z31.s }, { z0.s - z1.s }
+	frintn	{ z0.s, z1.s }, { z30.s - z31.s }
+	frintn	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	frintn	{ z0.s - z3.s }, { z0.s - z3.s }
+	frintn	{ z28.s - z31.s }, { z0.s - z3.s }
+	frintn	{ z0.s - z3.s }, { z28.s - z31.s }
+	frintn	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	frintp	{ z0.s, z1.s }, { z0.s - z1.s }
+	frintp	{ z30.s, z31.s }, { z0.s - z1.s }
+	frintp	{ z0.s, z1.s }, { z30.s - z31.s }
+	frintp	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	frintp	{ z0.s - z3.s }, { z0.s - z3.s }
+	frintp	{ z28.s - z31.s }, { z0.s - z3.s }
+	frintp	{ z0.s - z3.s }, { z28.s - z31.s }
+	frintp	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	scvtf	{ z0.s, z1.s }, { z0.s - z1.s }
+	scvtf	{ z30.s, z31.s }, { z0.s - z1.s }
+	scvtf	{ z0.s, z1.s }, { z30.s - z31.s }
+	scvtf	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	scvtf	{ z0.s - z3.s }, { z0.s - z3.s }
+	scvtf	{ z28.s - z31.s }, { z0.s - z3.s }
+	scvtf	{ z0.s - z3.s }, { z28.s - z31.s }
+	scvtf	{ z24.s - z27.s }, { z8.s - z11.s }
+
+	ucvtf	{ z0.s, z1.s }, { z0.s - z1.s }
+	ucvtf	{ z30.s, z31.s }, { z0.s - z1.s }
+	ucvtf	{ z0.s, z1.s }, { z30.s - z31.s }
+	ucvtf	{ z10.s, z11.s }, { z26.s - z27.s }
+
+	ucvtf	{ z0.s - z3.s }, { z0.s - z3.s }
+	ucvtf	{ z28.s - z31.s }, { z0.s - z3.s }
+	ucvtf	{ z0.s - z3.s }, { z28.s - z31.s }
+	ucvtf	{ z24.s - z27.s }, { z8.s - z11.s }
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index 9baf928fa96..90a96f0ce5f 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -188,7 +188,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x10x100xxxxxxxxxxxxxxxxx
                                                      zero.  */
-                                                  return 2845;
+                                                  return 2861;
                                                 }
                                             }
                                         }
@@ -212,7 +212,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000x00x101xx0xxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 2589;
+                                                      return 2601;
                                                     }
                                                   else
                                                     {
@@ -220,7 +220,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000x00x101xx1xxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 2588;
+                                                      return 2600;
                                                     }
                                                 }
                                               else
@@ -229,7 +229,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x10x101xxxxxxxxxxxxxxxxx
                                                      luti4.  */
-                                                  return 2587;
+                                                  return 2599;
                                                 }
                                             }
                                         }
@@ -248,7 +248,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x010xxxxx00xxxxxxxxxx
                                                          mov.  */
-                                                      return 2596;
+                                                      return 2608;
                                                     }
                                                   else
                                                     {
@@ -256,7 +256,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x011xxxxx00xxxxxxxxxx
                                                          mov.  */
-                                                      return 2592;
+                                                      return 2604;
                                                     }
                                                 }
                                               else
@@ -269,7 +269,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x00x11xxx0xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2586;
+                                                          return 2598;
                                                         }
                                                       else
                                                         {
@@ -277,7 +277,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x00x11xxx1xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2585;
+                                                          return 2597;
                                                         }
                                                     }
                                                   else
@@ -290,7 +290,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010x110xxxxx00xxxxxxxxxx
                                                                  movt.  */
-                                                              return 2607;
+                                                              return 2619;
                                                             }
                                                           else
                                                             {
@@ -298,7 +298,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010x111xxxxx00xxxxxxxxxx
                                                                  movt.  */
-                                                              return 2606;
+                                                              return 2618;
                                                             }
                                                         }
                                                       else
@@ -307,7 +307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000110x11xxxxxx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2584;
+                                                          return 2596;
                                                         }
                                                     }
                                                 }
@@ -320,7 +320,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx10xxxxxxxxxx
                                                      mov.  */
-                                                  return 2594;
+                                                  return 2606;
                                                 }
                                               else
                                                 {
@@ -328,7 +328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx10xxxxxxxxxx
                                                      mov.  */
-                                                  return 2590;
+                                                  return 2602;
                                                 }
                                             }
                                         }
@@ -342,7 +342,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx01xxxxxxxxxx
                                                      mov.  */
-                                                  return 2597;
+                                                  return 2609;
                                                 }
                                               else
                                                 {
@@ -350,7 +350,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx01xxxxxxxxxx
                                                      mov.  */
-                                                  return 2593;
+                                                  return 2605;
                                                 }
                                             }
                                           else
@@ -361,7 +361,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx11xxxxxxxxxx
                                                      mov.  */
-                                                  return 2595;
+                                                  return 2607;
                                                 }
                                               else
                                                 {
@@ -369,7 +369,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx11xxxxxxxxxx
                                                      mov.  */
-                                                  return 2591;
+                                                  return 2603;
                                                 }
                                             }
                                         }
@@ -396,7 +396,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2523;
+                                                          return 2535;
                                                         }
                                                       else
                                                         {
@@ -404,7 +404,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2524;
+                                                          return 2536;
                                                         }
                                                     }
                                                   else
@@ -415,7 +415,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2547;
+                                                          return 2559;
                                                         }
                                                       else
                                                         {
@@ -423,7 +423,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2548;
+                                                          return 2560;
                                                         }
                                                     }
                                                 }
@@ -437,7 +437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2539;
+                                                          return 2551;
                                                         }
                                                       else
                                                         {
@@ -445,7 +445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2540;
+                                                          return 2552;
                                                         }
                                                     }
                                                   else
@@ -456,7 +456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2531;
+                                                          return 2543;
                                                         }
                                                       else
                                                         {
@@ -464,7 +464,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2532;
+                                                          return 2544;
                                                         }
                                                     }
                                                 }
@@ -481,7 +481,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2555;
+                                                          return 2567;
                                                         }
                                                       else
                                                         {
@@ -489,7 +489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2556;
+                                                          return 2568;
                                                         }
                                                     }
                                                   else
@@ -500,7 +500,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2579;
+                                                          return 2591;
                                                         }
                                                       else
                                                         {
@@ -508,7 +508,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2580;
+                                                          return 2592;
                                                         }
                                                     }
                                                 }
@@ -522,7 +522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2571;
+                                                          return 2583;
                                                         }
                                                       else
                                                         {
@@ -530,7 +530,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2572;
+                                                          return 2584;
                                                         }
                                                     }
                                                   else
@@ -541,7 +541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2563;
+                                                          return 2575;
                                                         }
                                                       else
                                                         {
@@ -549,7 +549,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2564;
+                                                          return 2576;
                                                         }
                                                     }
                                                 }
@@ -584,7 +584,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0100000100xxxxxxxxxxxxxxxx01xxx
                                                      smopa.  */
-                                                  return 2667;
+                                                  return 2681;
                                                 }
                                             }
                                           else
@@ -612,7 +612,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100000100xxxxxxxxxxxxxxxx11xxx
                                                  smops.  */
-                                              return 2668;
+                                              return 2682;
                                             }
                                         }
                                     }
@@ -635,7 +635,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2519;
+                                                          return 2531;
                                                         }
                                                       else
                                                         {
@@ -643,7 +643,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2520;
+                                                          return 2532;
                                                         }
                                                     }
                                                   else
@@ -654,7 +654,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2543;
+                                                          return 2555;
                                                         }
                                                       else
                                                         {
@@ -662,7 +662,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2544;
+                                                          return 2556;
                                                         }
                                                     }
                                                 }
@@ -676,7 +676,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2535;
+                                                          return 2547;
                                                         }
                                                       else
                                                         {
@@ -684,7 +684,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2536;
+                                                          return 2548;
                                                         }
                                                     }
                                                   else
@@ -695,7 +695,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2527;
+                                                          return 2539;
                                                         }
                                                       else
                                                         {
@@ -703,7 +703,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2528;
+                                                          return 2540;
                                                         }
                                                     }
                                                 }
@@ -720,7 +720,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2551;
+                                                          return 2563;
                                                         }
                                                       else
                                                         {
@@ -728,7 +728,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2552;
+                                                          return 2564;
                                                         }
                                                     }
                                                   else
@@ -739,7 +739,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2575;
+                                                          return 2587;
                                                         }
                                                       else
                                                         {
@@ -747,7 +747,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2576;
+                                                          return 2588;
                                                         }
                                                     }
                                                 }
@@ -761,7 +761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2567;
+                                                          return 2579;
                                                         }
                                                       else
                                                         {
@@ -769,7 +769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2568;
+                                                          return 2580;
                                                         }
                                                     }
                                                   else
@@ -780,7 +780,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2559;
+                                                          return 2571;
                                                         }
                                                       else
                                                         {
@@ -788,7 +788,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2560;
+                                                          return 2572;
                                                         }
                                                     }
                                                 }
@@ -856,7 +856,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2681;
+                                                      return 2695;
                                                     }
                                                   else
                                                     {
@@ -864,7 +864,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2682;
+                                                      return 2696;
                                                     }
                                                 }
                                               else
@@ -875,7 +875,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2705;
+                                                      return 2719;
                                                     }
                                                   else
                                                     {
@@ -883,7 +883,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx110xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2706;
+                                                      return 2720;
                                                     }
                                                 }
                                             }
@@ -897,7 +897,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx001xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2697;
+                                                      return 2711;
                                                     }
                                                   else
                                                     {
@@ -905,7 +905,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx101xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2698;
+                                                      return 2712;
                                                     }
                                                 }
                                               else
@@ -916,7 +916,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx011xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2689;
+                                                      return 2703;
                                                     }
                                                   else
                                                     {
@@ -924,7 +924,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx111xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2690;
+                                                      return 2704;
                                                     }
                                                 }
                                             }
@@ -941,7 +941,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2713;
+                                                      return 2727;
                                                     }
                                                   else
                                                     {
@@ -949,7 +949,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2714;
+                                                      return 2728;
                                                     }
                                                 }
                                               else
@@ -960,7 +960,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2737;
+                                                      return 2751;
                                                     }
                                                   else
                                                     {
@@ -968,7 +968,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx110xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2738;
+                                                      return 2752;
                                                     }
                                                 }
                                             }
@@ -982,7 +982,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx001xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2729;
+                                                      return 2743;
                                                     }
                                                   else
                                                     {
@@ -990,7 +990,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx101xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2730;
+                                                      return 2744;
                                                     }
                                                 }
                                               else
@@ -1001,7 +1001,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx011xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2721;
+                                                      return 2735;
                                                     }
                                                   else
                                                     {
@@ -1009,7 +1009,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx111xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2722;
+                                                      return 2736;
                                                     }
                                                 }
                                             }
@@ -1073,7 +1073,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx000xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2677;
+                                                      return 2691;
                                                     }
                                                   else
                                                     {
@@ -1081,7 +1081,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx100xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2678;
+                                                      return 2692;
                                                     }
                                                 }
                                               else
@@ -1092,7 +1092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx010xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2701;
+                                                      return 2715;
                                                     }
                                                   else
                                                     {
@@ -1100,7 +1100,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx110xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2702;
+                                                      return 2716;
                                                     }
                                                 }
                                             }
@@ -1114,7 +1114,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx001xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2693;
+                                                      return 2707;
                                                     }
                                                   else
                                                     {
@@ -1122,7 +1122,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx101xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2694;
+                                                      return 2708;
                                                     }
                                                 }
                                               else
@@ -1133,7 +1133,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx011xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2685;
+                                                      return 2699;
                                                     }
                                                   else
                                                     {
@@ -1141,7 +1141,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx111xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2686;
+                                                      return 2700;
                                                     }
                                                 }
                                             }
@@ -1158,7 +1158,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx000xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2709;
+                                                      return 2723;
                                                     }
                                                   else
                                                     {
@@ -1166,7 +1166,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx100xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2710;
+                                                      return 2724;
                                                     }
                                                 }
                                               else
@@ -1177,7 +1177,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx010xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2733;
+                                                      return 2747;
                                                     }
                                                   else
                                                     {
@@ -1185,7 +1185,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx110xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2734;
+                                                      return 2748;
                                                     }
                                                 }
                                             }
@@ -1199,7 +1199,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx001xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2725;
+                                                      return 2739;
                                                     }
                                                   else
                                                     {
@@ -1207,7 +1207,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx101xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2726;
+                                                      return 2740;
                                                     }
                                                 }
                                               else
@@ -1218,7 +1218,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx011xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2717;
+                                                      return 2731;
                                                     }
                                                   else
                                                     {
@@ -1226,7 +1226,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx111xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2718;
+                                                      return 2732;
                                                     }
                                                 }
                                             }
@@ -1318,7 +1318,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx000xx
                                                          smlall.  */
-                                                      return 2643;
+                                                      return 2657;
                                                     }
                                                   else
                                                     {
@@ -1326,7 +1326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx001xx
                                                          usmlall.  */
-                                                      return 2826;
+                                                      return 2842;
                                                     }
                                                 }
                                               else
@@ -1339,7 +1339,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx000xxx
                                                              smlall.  */
-                                                          return 2644;
+                                                          return 2658;
                                                         }
                                                       else
                                                         {
@@ -1347,7 +1347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx000xxx
                                                              smlall.  */
-                                                          return 2645;
+                                                          return 2659;
                                                         }
                                                     }
                                                   else
@@ -1358,7 +1358,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx100xxx
                                                              usmlall.  */
-                                                          return 2827;
+                                                          return 2843;
                                                         }
                                                       else
                                                         {
@@ -1366,7 +1366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx100xxx
                                                              usmlall.  */
-                                                          return 2828;
+                                                          return 2844;
                                                         }
                                                     }
                                                 }
@@ -1381,7 +1381,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx100xx
                                                          umlall.  */
-                                                      return 2790;
+                                                      return 2806;
                                                     }
                                                   else
                                                     {
@@ -1389,7 +1389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx101xx
                                                          sumlall.  */
-                                                      return 2752;
+                                                      return 2766;
                                                     }
                                                 }
                                               else
@@ -1402,7 +1402,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx010xxx
                                                              umlall.  */
-                                                          return 2791;
+                                                          return 2807;
                                                         }
                                                       else
                                                         {
@@ -1410,7 +1410,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx010xxx
                                                              umlall.  */
-                                                          return 2792;
+                                                          return 2808;
                                                         }
                                                     }
                                                   else
@@ -1421,7 +1421,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx110xxx
                                                              sumlall.  */
-                                                          return 2753;
+                                                          return 2767;
                                                         }
                                                       else
                                                         {
@@ -1429,7 +1429,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx110xxx
                                                              sumlall.  */
-                                                          return 2754;
+                                                          return 2768;
                                                         }
                                                     }
                                                 }
@@ -1445,7 +1445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx0000010000xxxxxxxxxxxxxxx01xxx
                                                      smlsll.  */
-                                                  return 2659;
+                                                  return 2673;
                                                 }
                                               else
                                                 {
@@ -1455,7 +1455,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx0xxxxxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2660;
+                                                      return 2674;
                                                     }
                                                   else
                                                     {
@@ -1463,7 +1463,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx1xxxxxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2661;
+                                                      return 2675;
                                                     }
                                                 }
                                             }
@@ -1475,7 +1475,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx0000010000xxxxxxxxxxxxxxx11xxx
                                                      umlsll.  */
-                                                  return 2806;
+                                                  return 2822;
                                                 }
                                               else
                                                 {
@@ -1485,7 +1485,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx0xxxxxxxxxx11xxx
                                                          umlsll.  */
-                                                      return 2807;
+                                                      return 2823;
                                                     }
                                                   else
                                                     {
@@ -1493,7 +1493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx1xxxxxxxxxx11xxx
                                                          umlsll.  */
-                                                      return 2808;
+                                                      return 2824;
                                                     }
                                                 }
                                             }
@@ -1515,7 +1515,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx000xxxxxxxxx0xxx
                                                              ld1b.  */
-                                                          return 2525;
+                                                          return 2537;
                                                         }
                                                       else
                                                         {
@@ -1523,7 +1523,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx010xxxxxxxxx0xxx
                                                              ld1w.  */
-                                                          return 2549;
+                                                          return 2561;
                                                         }
                                                     }
                                                   else
@@ -1534,7 +1534,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx001xxxxxxxxx0xxx
                                                              ld1h.  */
-                                                          return 2541;
+                                                          return 2553;
                                                         }
                                                       else
                                                         {
@@ -1542,7 +1542,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx011xxxxxxxxx0xxx
                                                              ld1d.  */
-                                                          return 2533;
+                                                          return 2545;
                                                         }
                                                     }
                                                 }
@@ -1556,7 +1556,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx000xxxxxxxxx1xxx
                                                              ldnt1b.  */
-                                                          return 2557;
+                                                          return 2569;
                                                         }
                                                       else
                                                         {
@@ -1564,7 +1564,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx010xxxxxxxxx1xxx
                                                              ldnt1w.  */
-                                                          return 2581;
+                                                          return 2593;
                                                         }
                                                     }
                                                   else
@@ -1575,7 +1575,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx001xxxxxxxxx1xxx
                                                              ldnt1h.  */
-                                                          return 2573;
+                                                          return 2585;
                                                         }
                                                       else
                                                         {
@@ -1583,7 +1583,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx011xxxxxxxxx1xxx
                                                              ldnt1d.  */
-                                                          return 2565;
+                                                          return 2577;
                                                         }
                                                     }
                                                 }
@@ -1611,7 +1611,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx100xxxxxxxxx0xxx
                                                              ld1b.  */
-                                                          return 2526;
+                                                          return 2538;
                                                         }
                                                       else
                                                         {
@@ -1619,7 +1619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1100001000xxxxx100xxxxxxxxx0xxx
                                                              ldr.  */
-                                                          return 2583;
+                                                          return 2595;
                                                         }
                                                     }
                                                   else
@@ -1628,7 +1628,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx110xxxxxxxxx0xxx
                                                          ld1w.  */
-                                                      return 2550;
+                                                      return 2562;
                                                     }
                                                 }
                                               else
@@ -1639,7 +1639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx101xxxxxxxxx0xxx
                                                          ld1h.  */
-                                                      return 2542;
+                                                      return 2554;
                                                     }
                                                   else
                                                     {
@@ -1647,7 +1647,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx111xxxxxxxxx0xxx
                                                          ld1d.  */
-                                                      return 2534;
+                                                      return 2546;
                                                     }
                                                 }
                                             }
@@ -1661,7 +1661,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx100xxxxxxxxx1xxx
                                                          ldnt1b.  */
-                                                      return 2558;
+                                                      return 2570;
                                                     }
                                                   else
                                                     {
@@ -1669,7 +1669,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx110xxxxxxxxx1xxx
                                                          ldnt1w.  */
-                                                      return 2582;
+                                                      return 2594;
                                                     }
                                                 }
                                               else
@@ -1680,7 +1680,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx101xxxxxxxxx1xxx
                                                          ldnt1h.  */
-                                                      return 2574;
+                                                      return 2586;
                                                     }
                                                   else
                                                     {
@@ -1688,7 +1688,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx111xxxxxxxxx1xxx
                                                          ldnt1d.  */
-                                                      return 2566;
+                                                      return 2578;
                                                     }
                                                 }
                                             }
@@ -1721,7 +1721,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx0xxxxxxx00xxx
                                                              smlall.  */
-                                                          return 2848;
+                                                          return 2864;
                                                         }
                                                       else
                                                         {
@@ -1731,7 +1731,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx0xxxxxxx00xxx
                                                                  smlall.  */
-                                                              return 2849;
+                                                              return 2865;
                                                             }
                                                           else
                                                             {
@@ -1739,7 +1739,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx0xxxxxxx00xxx
                                                                  smlall.  */
-                                                              return 2850;
+                                                              return 2866;
                                                             }
                                                         }
                                                     }
@@ -1751,7 +1751,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx1xxxxxxx00xxx
                                                              fmlal.  */
-                                                          return 2494;
+                                                          return 2498;
                                                         }
                                                       else
                                                         {
@@ -1761,7 +1761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx1xxxxxxx00xxx
                                                                  fmlal.  */
-                                                              return 2495;
+                                                              return 2499;
                                                             }
                                                           else
                                                             {
@@ -1769,7 +1769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx1xxxxxxx00xxx
                                                                  fmlal.  */
-                                                              return 2496;
+                                                              return 2500;
                                                             }
                                                         }
                                                     }
@@ -1806,7 +1806,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx0xxxxxxx10xxx
                                                              umlall.  */
-                                                          return 2857;
+                                                          return 2873;
                                                         }
                                                       else
                                                         {
@@ -1816,7 +1816,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx0xxxxxxx10xxx
                                                                  umlall.  */
-                                                              return 2858;
+                                                              return 2874;
                                                             }
                                                           else
                                                             {
@@ -1824,7 +1824,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx0xxxxxxx10xxx
                                                                  umlall.  */
-                                                              return 2859;
+                                                              return 2875;
                                                             }
                                                         }
                                                     }
@@ -1884,7 +1884,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx0xxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2851;
+                                                      return 2867;
                                                     }
                                                   else
                                                     {
@@ -1894,7 +1894,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx0xxxxxxx01xxx
                                                              smlsll.  */
-                                                          return 2852;
+                                                          return 2868;
                                                         }
                                                       else
                                                         {
@@ -1902,7 +1902,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx0xxxxxxx01xxx
                                                              smlsll.  */
-                                                          return 2853;
+                                                          return 2869;
                                                         }
                                                     }
                                                 }
@@ -1914,7 +1914,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx1xxxxxxx01xxx
                                                          fmlsl.  */
-                                                      return 2508;
+                                                      return 2512;
                                                     }
                                                   else
                                                     {
@@ -1924,7 +1924,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx1xxxxxxx01xxx
                                                              fmlsl.  */
-                                                          return 2509;
+                                                          return 2513;
                                                         }
                                                       else
                                                         {
@@ -1932,7 +1932,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx1xxxxxxx01xxx
                                                              fmlsl.  */
-                                                          return 2510;
+                                                          return 2514;
                                                         }
                                                     }
                                                 }
@@ -1943,7 +1943,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100001100xxxxxxxxxxxxxxxx01xxx
                                                  umopa.  */
-                                              return 2814;
+                                              return 2830;
                                             }
                                         }
                                       [...]

[diff truncated at 100000 bytes]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-03-30 10:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-30 10:15 [binutils-gdb] aarch64: Add the SME2 FP<->int conversion instructions Richard Sandiford

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).