aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSrinath Parvathaneni <srinath.parvathaneni@arm.com>2025-01-10 14:07:19 +0000
committerSrinath Parvathaneni <srinath.parvathaneni@arm.com>2025-01-10 14:08:21 +0000
commit07492186894c3eda4242e9994fc5e973b8f3fb0b (patch)
tree6ac1f0d78cc36ec934d099ec693ed1d7f28f767f
parent5de345074fdaaacaee0f8e09bb44489516d30811 (diff)
downloadbinutils-07492186894c3eda4242e9994fc5e973b8f3fb0b.zip
binutils-07492186894c3eda4242e9994fc5e973b8f3fb0b.tar.gz
binutils-07492186894c3eda4242e9994fc5e973b8f3fb0b.tar.bz2
aarch64: Add support for FEAT_SME_F16F16 fcvt and fcvtl instructions.
This patch adds support for FEAT_SME_F16F16 instructions fcvt and fcvtl, which are available on passing command line flags +sme-f16f16 and the spec is available here[1]. [1]: https://developer.arm.com/documentation/ddi0602/2024-06/SME-Instructions?lang=en
-rw-r--r--gas/testsuite/gas/aarch64/sme-f16f16-4-bad.d4
-rw-r--r--gas/testsuite/gas/aarch64/sme-f16f16-4-bad.l27
-rw-r--r--gas/testsuite/gas/aarch64/sme-f16f16-4-bad.s18
-rw-r--r--gas/testsuite/gas/aarch64/sme-f16f16-4.d24
-rw-r--r--gas/testsuite/gas/aarch64/sme-f16f16-4.s17
-rw-r--r--opcodes/aarch64-dis-2.c458
-rw-r--r--opcodes/aarch64-tbl.h6
7 files changed, 336 insertions, 218 deletions
diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.d b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.d
new file mode 100644
index 0000000..2ff075c
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.d
@@ -0,0 +1,4 @@
+#name: Test of invalid FEAT_SME_F16F16 fcvt and fcvtl instructions.
+#as: -march=armv8-a+sme-f16f16
+#source: sme-f16f16-4-bad.s
+#error_output: sme-f16f16-4-bad.l
diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.l b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.l
new file mode 100644
index 0000000..95d1b36
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.l
@@ -0,0 +1,27 @@
+.*: Assembler messages:
+.*: Error: operand mismatch -- `fcvt { ?z0.d-z1.d ?},z0.h'
+.*: Info: did you mean this\?
+.*: Info: fcvt { ?z0.s-z1.s ?}, z0.h
+.*: Error: start register out of range at operand 1 -- `fcvt { ?z29.s-z30.s ?},z0.h'
+.*: Error: operand mismatch -- `fcvt { ?z0.s-z1.s ?},z31.d'
+.*: Info: did you mean this\?
+.*: Info: fcvt { ?z0.s-z1.s ?}, z31.h
+.*: Error: start register out of range at operand 1 -- `fcvt { ?z15.s-z16.s ?},z31.h'
+.*: Error: operand mismatch -- `fcvt { ?z14.s-z15.s ?},z15.b'
+.*: Info: did you mean this\?
+.*: Info: fcvt { ?z14.s-z15.s ?}, z15.h
+.*: Error: type mismatch in vector register list at operand 1 -- `fcvt { ?z6.s,z7.b ?},z7.h'
+.*: Error: missing type suffix at operand 1 -- `fcvt { ?z2-z3 ?},z3.h'
+.*: Error: operand mismatch -- `fcvtl { ?z0.d-z1.d ?},z0.h'
+.*: Info: did you mean this\?
+.*: Info: fcvtl { ?z0.s-z1.s ?}, z0.h
+.*: Error: start register out of range at operand 1 -- `fcvtl { ?z29.s-z30.s ?},z0.h'
+.*: Error: operand mismatch -- `fcvtl { ?z0.s-z1.s ?},z31.d'
+.*: Info: did you mean this\?
+.*: Info: fcvtl { ?z0.s-z1.s ?}, z31.h
+.*: Error: start register out of range at operand 1 -- `fcvtl { ?z15.s-z16.s ?},z31.h'
+.*: Error: operand mismatch -- `fcvtl { ?z14.s-z15.s ?},z15.b'
+.*: Info: did you mean this\?
+.*: Info: fcvtl { ?z14.s-z15.s ?}, z15.h
+.*: Error: type mismatch in vector register list at operand 1 -- `fcvtl { ?z6.s,z7.b ?},z7.h'
+.*: Error: missing type suffix at operand 1 -- `fcvtl { ?z2-z3 ?},z3.h'
diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.s b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.s
new file mode 100644
index 0000000..046a7de
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme-f16f16-4-bad.s
@@ -0,0 +1,18 @@
+/* FCVT (widening). */
+fcvt {z0.d - z1.d}, z0.h
+fcvt {z29.s - z30.s}, z0.h
+fcvt {z0.s - z1.s}, z31.d
+fcvt {z15.s - z16.s}, z31.h
+fcvt {z14.s - z15.s}, z15.b
+fcvt {z6.s, z7.b}, z7.h
+fcvt {z2 - z3}, z3.h
+
+/* FCVTL. */
+fcvtl {z0.d - z1.d}, z0.h
+fcvtl {z29.s - z30.s}, z0.h
+fcvtl {z0.s - z1.s}, z31.d
+fcvtl {z15.s - z16.s}, z31.h
+fcvtl {z14.s - z15.s}, z15.b
+fcvtl {z6.s, z7.b}, z7.h
+fcvtl {z2 - z3}, z3.h
+
diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-4.d b/gas/testsuite/gas/aarch64/sme-f16f16-4.d
new file mode 100644
index 0000000..2fcfb2c
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme-f16f16-4.d
@@ -0,0 +1,24 @@
+#name: Test of FEAT_SME_F16F16 fcvt and fcvtl instructions.
+#as: -march=armv8-a+sme-f16f16
+#objdump: -dr
+
+[^:]+: file format .*
+
+
+[^:]+:
+
+[^:]+:
+.*: c1a0e000 fcvt { ?z0.s-z1.s ?}, z0.h
+.*: c1a0e01e fcvt { ?z30.s-z31.s ?}, z0.h
+.*: c1a0e3e0 fcvt { ?z0.s-z1.s ?}, z31.h
+.*: c1a0e3fe fcvt { ?z30.s-z31.s ?}, z31.h
+.*: c1a0e1ee fcvt { ?z14.s-z15.s ?}, z15.h
+.*: c1a0e0e6 fcvt { ?z6.s-z7.s ?}, z7.h
+.*: c1a0e062 fcvt { ?z2.s-z3.s ?}, z3.h
+.*: c1a0e001 fcvtl { ?z0.s-z1.s ?}, z0.h
+.*: c1a0e01f fcvtl { ?z30.s-z31.s ?}, z0.h
+.*: c1a0e3e1 fcvtl { ?z0.s-z1.s ?}, z31.h
+.*: c1a0e3ff fcvtl { ?z30.s-z31.s ?}, z31.h
+.*: c1a0e1ef fcvtl { ?z14.s-z15.s ?}, z15.h
+.*: c1a0e0e7 fcvtl { ?z6.s-z7.s ?}, z7.h
+.*: c1a0e063 fcvtl { ?z2.s-z3.s ?}, z3.h
diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-4.s b/gas/testsuite/gas/aarch64/sme-f16f16-4.s
new file mode 100644
index 0000000..26e76c6
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sme-f16f16-4.s
@@ -0,0 +1,17 @@
+/* FCVT (widening). */
+fcvt {z0.s - z1.s}, z0.h
+fcvt {z30.s - z31.s}, z0.h
+fcvt {z0.s - z1.s}, z31.h
+fcvt {z30.s - z31.s}, z31.h
+fcvt {z14.s - z15.s}, z15.h
+fcvt {z6.s - z7.s}, z7.h
+fcvt {z2.s - z3.s}, z3.h
+
+/* FCVTL. */
+fcvtl {z0.s - z1.s}, z0.h
+fcvtl {z30.s - z31.s}, z0.h
+fcvtl {z0.s - z1.s}, z31.h
+fcvtl {z30.s - z31.s}, z31.h
+fcvtl {z14.s - z15.s}, z15.h
+fcvtl {z6.s - z7.s}, z7.h
+fcvtl {z2.s - z3.s}, z3.h
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index ad4e8a9..611c934 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -271,7 +271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000000x000101x00xxxxxxxxxxxxxx
luti4. */
- return 3442;
+ return 3444;
}
else
{
@@ -310,7 +310,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000000xx01101x00xxxxxxxxxxxxxx
luti4. */
- return 3443;
+ return 3445;
}
else
{
@@ -542,7 +542,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000000010011x1xxxx00xxxxxxxxxx
movt. */
- return 3444;
+ return 3446;
}
}
else
@@ -1366,7 +1366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx000000101xxxxxxxxxxxxxxxx00xxx
fmopa. */
- return 3510;
+ return 3512;
}
else
{
@@ -1374,7 +1374,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx000000101xxxxxxxxxxxxxxxx01xxx
fmopa. */
- return 3509;
+ return 3511;
}
}
else
@@ -1722,7 +1722,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000010001xxxx1xx0xxxxx1000xxx
fmlall. */
- return 3503;
+ return 3505;
}
}
}
@@ -1772,7 +1772,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000010001xxxx1xx1xxxxx100xxxx
fdot. */
- return 3488;
+ return 3490;
}
}
}
@@ -2179,7 +2179,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011001xxxxxxx0xxxxxx100xxx
fmlall. */
- return 3502;
+ return 3504;
}
}
}
@@ -2284,7 +2284,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011001xxxxxxx1xxxxxx10xxxx
fmlal. */
- return 3495;
+ return 3497;
}
}
}
@@ -2468,7 +2468,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011001xxxxxxx1xxxxxx11xxxx
fmlal. */
- return 3494;
+ return 3496;
}
}
}
@@ -2510,7 +2510,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000010100xxxxxxxxxxxxxxxx0xxx
fmlall. */
- return 3501;
+ return 3503;
}
else
{
@@ -2878,7 +2878,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xxx000010101xxxx0xx0xxxxxx111xxx
fdot. */
- return 3481;
+ return 3483;
}
else
{
@@ -2947,7 +2947,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xxx000010101xxxx1xx0xxxxxx001xxx
fdot. */
- return 3482;
+ return 3484;
}
else
{
@@ -3026,7 +3026,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000011100xxxxxxx0xxxxxxx0xxxx
fmlal. */
- return 3493;
+ return 3495;
}
else
{
@@ -3081,7 +3081,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000011101xxxx0xx01xxxxx00xxxx
fvdotb. */
- return 3512;
+ return 3514;
}
else
{
@@ -3099,7 +3099,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000011101xxxxxxx0xxxxxx10xxxx
fdot. */
- return 3487;
+ return 3489;
}
}
}
@@ -3173,7 +3173,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx0000011101xxxxxxx1xxxxxx10xxxx
fvdot. */
- return 3511;
+ return 3513;
}
}
}
@@ -3253,7 +3253,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx000001110xxxxx0xx01xxxxxx1xxxx
fvdott. */
- return 3513;
+ return 3515;
}
else
{
@@ -3430,7 +3430,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx00xx000xxxx10000x
fmlall. */
- return 3507;
+ return 3509;
}
else
{
@@ -3438,7 +3438,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx10xx000xxxx10000x
fmlall. */
- return 3508;
+ return 3510;
}
}
}
@@ -3493,7 +3493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx10xxxx0xx000xxxxx00x1x
fmlall. */
- return 3505;
+ return 3507;
}
else
{
@@ -3501,7 +3501,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx11xxxx0xx000xxxxx00x1x
fmlall. */
- return 3506;
+ return 3508;
}
}
}
@@ -3555,7 +3555,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx00xx100xxxx100xxx
fdot. */
- return 3491;
+ return 3493;
}
else
{
@@ -3563,7 +3563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx10xx100xxxx100xxx
fdot. */
- return 3492;
+ return 3494;
}
}
}
@@ -3625,7 +3625,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001101xxxx00xx010xxxx1000xx
fmlal. */
- return 3499;
+ return 3501;
}
else
{
@@ -3633,7 +3633,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001101xxxx10xx010xxxx1000xx
fmlal. */
- return 3500;
+ return 3502;
}
}
}
@@ -3688,7 +3688,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx10xxxx0xx010xxxxx001xx
fmlal. */
- return 3497;
+ return 3499;
}
else
{
@@ -3696,7 +3696,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx11xxxx0xx010xxxxx001xx
fmlal. */
- return 3498;
+ return 3500;
}
}
}
@@ -3765,7 +3765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx11xxxx0xx001xxxxx000xx
fmlall. */
- return 3504;
+ return 3506;
}
}
else
@@ -3848,7 +3848,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx11xxxx0xx011xxxxx00xxx
fmlal. */
- return 3496;
+ return 3498;
}
}
else
@@ -3881,7 +3881,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x10x1x00xx111xxxxx00xxx
fadd. */
- return 3445;
+ return 3447;
}
}
else
@@ -3900,7 +3900,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x10x1x10xx111xxxxx00xxx
fadd. */
- return 3446;
+ return 3448;
}
}
}
@@ -4036,7 +4036,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx00xx100xxxx110xxx
fdot. */
- return 3485;
+ return 3487;
}
else
{
@@ -4044,7 +4044,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x1xxxx10xx100xxxx110xxx
fdot. */
- return 3486;
+ return 3488;
}
}
}
@@ -4337,7 +4337,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010x10xxxx0xx100xxxxx01xxx
fdot. */
- return 3489;
+ return 3491;
}
else
{
@@ -4345,7 +4345,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010x11xxxx0xx100xxxxx01xxx
fdot. */
- return 3490;
+ return 3492;
}
}
else
@@ -4648,7 +4648,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x10x1x00xx111xxxxx01xxx
fsub. */
- return 3447;
+ return 3449;
}
}
else
@@ -4667,7 +4667,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011x10x1x10xx111xxxxx01xxx
fsub. */
- return 3448;
+ return 3450;
}
}
}
@@ -4741,7 +4741,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010x10xxxx0xx100xxxxx11xxx
fdot. */
- return 3483;
+ return 3485;
}
else
{
@@ -4749,7 +4749,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010x11xxxx0xx100xxxxx11xxx
fdot. */
- return 3484;
+ return 3486;
}
}
else
@@ -5304,7 +5304,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx1xxxxx101000xx1x0xxxx0
fscale. */
- return 3419;
+ return 3421;
}
}
else
@@ -5397,51 +5397,95 @@ aarch64_opcode_lookup_1 (uint32_t word)
{
if (((word >> 17) & 0x1) == 0)
{
- if (((word >> 5) & 0x1) == 0)
+ if (((word >> 18) & 0x1) == 0)
{
- if (((word >> 18) & 0x1) == 0)
+ if (((word >> 19) & 0x1) == 0)
{
- if (((word >> 19) & 0x1) == 0)
+ if (((word >> 22) & 0x1) == 0)
{
- if (((word >> 22) & 0x1) == 0)
+ if (((word >> 23) & 0x1) == 0)
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x1000001x01x0000111000xxxx0xxxxx
- fcvt. */
- return 2534;
+ if (((word >> 5) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001001x0000111000xxxx0xxxxx
+ fcvt. */
+ return 2534;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001001x0000111000xxxx1xxxxx
+ fcvtn. */
+ return 2535;
+ }
}
else
{
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x1000001x11x0000111000xxxx0xxxxx
- bfcvt. */
- return 2502;
+ if (((word >> 0) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001101x0000111000xxxxxxxxx0
+ fcvt. */
+ return 3339;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001101x0000111000xxxxxxxxx1
+ fcvtl. */
+ return 3340;
+ }
}
}
else
{
- if (((word >> 20) & 0x1) == 0)
+ if (((word >> 5) & 0x1) == 0)
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- x1000001xx101000111000xxxx0xxxxx
- frintn. */
- return 2594;
+ x1000001x11x0000111000xxxx0xxxxx
+ bfcvt. */
+ return 2502;
}
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
- x1000001xx111000111000xxxx0xxxxx
- frintn. */
- return 2595;
+ x1000001x11x0000111000xxxx1xxxxx
+ bfcvtn. */
+ return 2503;
}
}
}
else
{
+ if (((word >> 20) & 0x1) == 0)
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001xx101000111000xxxxxxxxxx
+ frintn. */
+ return 2594;
+ }
+ else
+ {
+ /* 33222222222211111111110000000000
+ 10987654321098765432109876543210
+ x1000001xx111000111000xxxxxxxxxx
+ frintn. */
+ return 2595;
+ }
+ }
+ }
+ else
+ {
+ if (((word >> 5) & 0x1) == 0)
+ {
if (((word >> 19) & 0x1) == 0)
{
if (((word >> 20) & 0x1) == 0)
@@ -5452,7 +5496,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001x0100100111000xxxx0xxxxx
fcvt. */
- return 3416;
+ return 3418;
}
else
{
@@ -5460,7 +5504,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001x1100100111000xxxx0xxxxx
bfcvt. */
- return 3411;
+ return 3413;
}
}
else
@@ -5469,7 +5513,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx110100111000xxxx0xxxxx
fcvt. */
- return 3417;
+ return 3419;
}
}
else
@@ -5492,35 +5536,13 @@ aarch64_opcode_lookup_1 (uint32_t word)
}
}
}
- }
- else
- {
- if (((word >> 18) & 0x1) == 0)
- {
- if (((word >> 22) & 0x1) == 0)
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x1000001x01xx000111000xxxx1xxxxx
- fcvtn. */
- return 2535;
- }
- else
- {
- /* 33222222222211111111110000000000
- 10987654321098765432109876543210
- x1000001x11xx000111000xxxx1xxxxx
- bfcvtn. */
- return 2503;
- }
- }
else
{
/* 33222222222211111111110000000000
10987654321098765432109876543210
x1000001xx1xx100111000xxxx1xxxxx
fcvtn. */
- return 3418;
+ return 3420;
}
}
}
@@ -5603,7 +5625,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010010x110111000xxxxxxxxx0
f1cvt. */
- return 3412;
+ return 3414;
}
else
{
@@ -5611,7 +5633,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011010x110111000xxxxxxxxx0
f2cvt. */
- return 3413;
+ return 3415;
}
}
else
@@ -5622,7 +5644,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000010110x110111000xxxxxxxxx0
bf1cvt. */
- return 3407;
+ return 3409;
}
else
{
@@ -5630,7 +5652,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x10000011110x110111000xxxxxxxxx0
bf2cvt. */
- return 3408;
+ return 3410;
}
}
}
@@ -5665,7 +5687,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001001xxx10111000xxxxxxxxx1
f1cvtl. */
- return 3414;
+ return 3416;
}
else
{
@@ -5673,7 +5695,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001101xxx10111000xxxxxxxxx1
f2cvtl. */
- return 3415;
+ return 3417;
}
}
else
@@ -5684,7 +5706,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001011xxx10111000xxxxxxxxx1
bf1cvtl. */
- return 3409;
+ return 3411;
}
else
{
@@ -5692,7 +5714,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001111xxx10111000xxxxxxxxx1
bf2cvtl. */
- return 3410;
+ return 3412;
}
}
}
@@ -5961,7 +5983,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx1xxxxx1x1100xx100xxxx0
fscale. */
- return 3421;
+ return 3423;
}
}
else
@@ -6137,7 +6159,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx1xxxxx1x1010xx100xxxx0
fscale. */
- return 3420;
+ return 3422;
}
else
{
@@ -6145,7 +6167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1000001xx1xxxxx1x1110xx100xxxx0
fscale. */
- return 3422;
+ return 3424;
}
}
}
@@ -11313,7 +11335,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0x11010000xxxxxxx1xxxxxxxxxxxxx
addpt. */
- return 3423;
+ return 3425;
}
else
{
@@ -11321,7 +11343,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1x11010000xxxxxxx1xxxxxxxxxxxxx
subpt. */
- return 3424;
+ return 3426;
}
}
}
@@ -12239,7 +12261,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xxxx1011x11xxxxx0xxxxxxxxxxxxxxx
maddpt. */
- return 3425;
+ return 3427;
}
else
{
@@ -12247,7 +12269,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xxxx1011x11xxxxx1xxxxxxxxxxxxxxx
msubpt. */
- return 3426;
+ return 3428;
}
}
}
@@ -12332,7 +12354,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx000100000xxxxxxxxxxxxx
addpt. */
- return 3427;
+ return 3429;
}
else
{
@@ -12439,7 +12461,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx000101000xxxxxxxxxxxxx
subpt. */
- return 3429;
+ return 3431;
}
else
{
@@ -12644,7 +12666,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx1xxxxx000010xxxxxxxxxx
addpt. */
- return 3428;
+ return 3430;
}
else
{
@@ -12685,7 +12707,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx1xxxxx000011xxxxxxxxxx
subpt. */
- return 3430;
+ return 3432;
}
else
{
@@ -14343,7 +14365,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx110100xxxxxxxxxx
mlapt. */
- return 3432;
+ return 3434;
}
}
else
@@ -14373,7 +14395,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx110110xxxxxxxxxx
madpt. */
- return 3431;
+ return 3433;
}
}
}
@@ -14681,7 +14703,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx00x100001xxxxxxxxxxxxx
smaxqv. */
- return 3341;
+ return 3343;
}
else
{
@@ -14689,7 +14711,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx01x100001xxxxxxxxxxxxx
orqv. */
- return 3352;
+ return 3354;
}
}
else
@@ -14700,7 +14722,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx0x0101001xxxxxxxxxxxxx
addqv. */
- return 3339;
+ return 3341;
}
else
{
@@ -14710,7 +14732,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx001101001xxxxxxxxxxxxx
umaxqv. */
- return 3343;
+ return 3345;
}
else
{
@@ -14718,7 +14740,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx011101001xxxxxxxxxxxxx
eorqv. */
- return 3345;
+ return 3347;
}
}
}
@@ -14755,7 +14777,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx00x110001xxxxxxxxxxxxx
sminqv. */
- return 3342;
+ return 3344;
}
else
{
@@ -14763,7 +14785,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx01x110001xxxxxxxxxxxxx
andqv. */
- return 3340;
+ return 3342;
}
}
}
@@ -14783,7 +14805,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x0xx0xx111001xxxxxxxxxxxxx
uminqv. */
- return 3344;
+ return 3346;
}
}
}
@@ -15527,7 +15549,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
110001x0x00xxxxx101xxxxxxxxxxxxx
ld1q. */
- return 3368;
+ return 3370;
}
else
{
@@ -16541,7 +16563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx111x00xxxxxxxxxx
zipq1. */
- return 3358;
+ return 3360;
}
else
{
@@ -16551,7 +16573,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx111010xxxxxxxxxx
uzpq1. */
- return 3356;
+ return 3358;
}
else
{
@@ -16559,7 +16581,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx111110xxxxxxxxxx
tblq. */
- return 3353;
+ return 3355;
}
}
}
@@ -16571,7 +16593,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx111x01xxxxxxxxxx
zipq2. */
- return 3359;
+ return 3361;
}
else
{
@@ -16579,7 +16601,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x0xx0xxxxx111x11xxxxxxxxxx
uzpq2. */
- return 3357;
+ return 3359;
}
}
}
@@ -17059,7 +17081,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0x00xxxxx000xxxxxxxxxxxxx
st3q. */
- return 3377;
+ return 3379;
}
else
{
@@ -17069,7 +17091,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0010xxxxx000xxxxxxxxxxxxx
st2q. */
- return 3376;
+ return 3378;
}
else
{
@@ -17077,7 +17099,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0110xxxxx000xxxxxxxxxxxxx
st4q. */
- return 3378;
+ return 3380;
}
}
}
@@ -17524,7 +17546,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0xx0x0000101xxxxxxxxxxxxx
faddqv. */
- return 3346;
+ return 3348;
}
else
{
@@ -17541,7 +17563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0xx0xx100101xxxxxxxxxxxxx
fmaxnmqv. */
- return 3347;
+ return 3349;
}
}
else
@@ -17582,7 +17604,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0xx0xx110101xxxxxxxxxxxxx
fmaxqv. */
- return 3348;
+ return 3350;
}
}
}
@@ -17604,7 +17626,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0xx0xx101101xxxxxxxxxxxxx
fminnmqv. */
- return 3349;
+ return 3351;
}
}
else
@@ -17623,7 +17645,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0xx0xx111101xxxxxxxxxxxxx
fminqv. */
- return 3350;
+ return 3352;
}
}
}
@@ -17743,7 +17765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x0xx01xxxx111xxxxxxxxxxxxx
ld2q. */
- return 3369;
+ return 3371;
}
}
}
@@ -17879,7 +17901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x0xx1xxxxx100xxxxxxxxxxxxx
ld2q. */
- return 3372;
+ return 3374;
}
}
else
@@ -18024,7 +18046,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x00x1xxxxx000xxxxxxxxxxxxx
st2q. */
- return 3379;
+ return 3381;
}
}
else
@@ -18067,7 +18089,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0101xxxxx000xxxxxxxxxxxxx
st3q. */
- return 3380;
+ return 3382;
}
}
else
@@ -18108,7 +18130,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0111xxxxx000xxxxxxxxxxxxx
st4q. */
- return 3381;
+ return 3383;
}
}
}
@@ -18137,7 +18159,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0001xxxxx0100x1xxxxxxxxxx
fdot. */
- return 3468;
+ return 3470;
}
}
else
@@ -18146,7 +18168,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0001xxxxx0101xxxxxxxxxxxx
fmlalb. */
- return 3470;
+ return 3472;
}
}
else
@@ -18187,7 +18209,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0101xxxxx0101xxxxxxxxxxxx
fmlalt. */
- return 3480;
+ return 3482;
}
}
else
@@ -18220,7 +18242,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0011xxxxx010xx1xxxxxxxxxx
fdot. */
- return 3466;
+ return 3468;
}
}
else
@@ -18291,7 +18313,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx100010xxxxxxxxxx
fmlallbb. */
- return 3471;
+ return 3473;
}
}
else
@@ -18300,7 +18322,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx1000x1xxxxxxxxxx
fdot. */
- return 3467;
+ return 3469;
}
}
else
@@ -18309,7 +18331,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx1100xxxxxxxxxxxx
fmlallbb. */
- return 3472;
+ return 3474;
}
}
else
@@ -18318,7 +18340,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx1x01xxxxxxxxxxxx
fmlallbt. */
- return 3473;
+ return 3475;
}
}
else
@@ -18345,7 +18367,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0101xxxxx100010xxxxxxxxxx
fmlalb. */
- return 3469;
+ return 3471;
}
}
else
@@ -18363,7 +18385,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0101xxxxx1100xxxxxxxxxxxx
fmlalltb. */
- return 3476;
+ return 3478;
}
}
else
@@ -18372,7 +18394,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0101xxxxx1x01xxxxxxxxxxxx
fmlalt. */
- return 3479;
+ return 3481;
}
}
else
@@ -18405,7 +18427,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0011xxxxx100xx1xxxxxxxxxx
fdot. */
- return 3465;
+ return 3467;
}
}
else
@@ -18414,7 +18436,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0011xxxxx110xxxxxxxxxxxxx
fmlallbt. */
- return 3474;
+ return 3476;
}
}
else
@@ -18446,7 +18468,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x0111xxxxx110xxxxxxxxxxxxx
fmlalltt. */
- return 3478;
+ return 3480;
}
}
else
@@ -18745,7 +18767,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111001x0xx1xxxxx001xxxxxxxxxxxxx
st1q. */
- return 3375;
+ return 3377;
}
}
else
@@ -18760,7 +18782,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx1010xxxxxxxxxxxx
fmlalltb. */
- return 3475;
+ return 3477;
}
else
{
@@ -18768,7 +18790,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x11001x0001xxxxx1011xxxxxxxxxxxx
fmlalltt. */
- return 3477;
+ return 3479;
}
}
else
@@ -19486,7 +19508,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1001010x0001110xxxxxxxxxx
pmov. */
- return 3360;
+ return 3362;
}
else
{
@@ -19494,7 +19516,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1001011x0001110xxxxxxxxxx
pmov. */
- return 3361;
+ return 3363;
}
}
else
@@ -19503,7 +19525,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x101101xx0001110xxxxxxxxxx
pmov. */
- return 3362;
+ return 3364;
}
}
else
@@ -19512,7 +19534,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x11x101xx0001110xxxxxxxxxx
pmov. */
- return 3363;
+ return 3365;
}
}
else
@@ -19558,7 +19580,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1001x10x1001110xxxxxxxxxx
pmov. */
- return 3364;
+ return 3366;
}
else
{
@@ -19566,7 +19588,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1001x11x1001110xxxxxxxxxx
pmov. */
- return 3365;
+ return 3367;
}
}
else
@@ -19575,7 +19597,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1011x1xx1001110xxxxxxxxxx
pmov. */
- return 3366;
+ return 3368;
}
}
else
@@ -19584,7 +19606,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x11x1x1xx1001110xxxxxxxxxx
pmov. */
- return 3367;
+ return 3369;
}
}
}
@@ -19603,7 +19625,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1x01xxxxx001001xxxxxxxxxx
dupq. */
- return 3351;
+ return 3353;
}
else
{
@@ -19611,7 +19633,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1x11xxxxx001001xxxxxxxxxx
extq. */
- return 3355;
+ return 3357;
}
}
else
@@ -19620,7 +19642,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
000001x1xx1xxxxx001101xxxxxxxxxx
tbxq. */
- return 3354;
+ return 3356;
}
}
else
@@ -21223,7 +21245,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x1xx1xxxxx101100xxxxxxxxxx
luti2. */
- return 3437;
+ return 3439;
}
}
else
@@ -21232,7 +21254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x1xx1xxxxx101x10xxxxxxxxxx
luti2. */
- return 3438;
+ return 3440;
}
}
else
@@ -21245,7 +21267,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x1xx1xxxxx101001xxxxxxxxxx
luti4. */
- return 3439;
+ return 3441;
}
else
{
@@ -21253,7 +21275,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x1xx1xxxxx101101xxxxxxxxxx
luti4. */
- return 3440;
+ return 3442;
}
}
else
@@ -21262,7 +21284,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
010001x1xx1xxxxx101x11xxxxxxxxxx
luti4. */
- return 3441;
+ return 3443;
}
}
}
@@ -22213,7 +22235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx001000001x00xxxxxxxxxx
f1cvt. */
- return 3399;
+ return 3401;
}
else
{
@@ -22221,7 +22243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx001000001x10xxxxxxxxxx
bf1cvt. */
- return 3395;
+ return 3397;
}
}
else
@@ -22232,7 +22254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx001000001x01xxxxxxxxxx
f2cvt. */
- return 3400;
+ return 3402;
}
else
{
@@ -22240,7 +22262,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx001000001x11xxxxxxxxxx
bf2cvt. */
- return 3396;
+ return 3398;
}
}
}
@@ -22285,7 +22307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1010001x00xxxxxxxxxx
fcvtn. */
- return 3404;
+ return 3406;
}
else
{
@@ -22293,7 +22315,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1010001x10xxxxxxxxxx
bfcvtn. */
- return 3403;
+ return 3405;
}
}
else
@@ -22304,7 +22326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1010001x01xxxxxxxxxx
fcvtnb. */
- return 3405;
+ return 3407;
}
else
{
@@ -22312,7 +22334,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1010001x11xxxxxxxxxx
fcvtnt. */
- return 3406;
+ return 3408;
}
}
}
@@ -22373,7 +22395,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1001001x00xxxxxxxxxx
f1cvtlt. */
- return 3401;
+ return 3403;
}
else
{
@@ -22381,7 +22403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1001001x10xxxxxxxxxx
bf1cvtlt. */
- return 3397;
+ return 3399;
}
}
else
@@ -22392,7 +22414,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1001001x01xxxxxxxxxx
f2cvtlt. */
- return 3402;
+ return 3404;
}
else
{
@@ -22400,7 +22422,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011001x1xx0x1001001x11xxxxxxxxxx
bf2cvtlt. */
- return 3398;
+ return 3400;
}
}
}
@@ -23726,7 +23748,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x10x01xxxx111xxxxxxxxxxxxx
ld3q. */
- return 3370;
+ return 3372;
}
else
{
@@ -23734,7 +23756,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x11x01xxxx111xxxxxxxxxxxxx
ld4q. */
- return 3371;
+ return 3373;
}
}
}
@@ -24907,7 +24929,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x10x1xxxxx100xxxxxxxxxxxxx
ld3q. */
- return 3373;
+ return 3375;
}
else
{
@@ -24915,7 +24937,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101001x11x1xxxxx100xxxxxxxxxxxxx
ld4q. */
- return 3374;
+ return 3376;
}
}
else
@@ -26980,7 +27002,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110100xxxxxxxx100xxxxxxxxxx
luti2. */
- return 3433;
+ return 3435;
}
}
}
@@ -26994,7 +27016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110010xxxxxxxx000xxxxxxxxxx
luti4. */
- return 3435;
+ return 3437;
}
else
{
@@ -27002,7 +27024,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110010xxxxxxxx100xxxxxxxxxx
luti4. */
- return 3436;
+ return 3438;
}
}
else
@@ -27011,7 +27033,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110110xxxxxxxxx00xxxxxxxxxx
luti2. */
- return 3434;
+ return 3436;
}
}
}
@@ -27127,7 +27149,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00001110x00xxxxxx10001xxxxxxxxxx
fmlallbb. */
- return 3457;
+ return 3459;
}
else
{
@@ -27135,7 +27157,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01001110x00xxxxxx10001xxxxxxxxxx
fmlalltb. */
- return 3459;
+ return 3461;
}
}
else
@@ -27146,7 +27168,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00001110x10xxxxxx10001xxxxxxxxxx
fmlallbt. */
- return 3458;
+ return 3460;
}
else
{
@@ -27154,7 +27176,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01001110x10xxxxxx10001xxxxxxxxxx
fmlalltt. */
- return 3460;
+ return 3462;
}
}
}
@@ -27242,7 +27264,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00001110x00xxxxxx11101xxxxxxxxxx
fcvtn. */
- return 3390;
+ return 3392;
}
else
{
@@ -27250,7 +27272,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01001110x00xxxxxx11101xxxxxxxxxx
fcvtn2. */
- return 3391;
+ return 3393;
}
}
else
@@ -27259,7 +27281,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110x10xxxxxx11101xxxxxxxxxx
fcvtn. */
- return 3392;
+ return 3394;
}
}
}
@@ -27402,7 +27424,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110x00xxxxxx11111xxxxxxxxxx
fdot. */
- return 3449;
+ return 3451;
}
else
{
@@ -27412,7 +27434,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x001110010xxxxxx11111xxxxxxxxxx
fdot. */
- return 3451;
+ return 3453;
}
else
{
@@ -27422,7 +27444,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00001110110xxxxxx11111xxxxxxxxxx
fmlalb. */
- return 3453;
+ return 3455;
}
else
{
@@ -27430,7 +27452,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01001110110xxxxxx11111xxxxxxxxxx
fmlalt. */
- return 3454;
+ return 3456;
}
}
}
@@ -27704,7 +27726,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx101110110xxxxx0x1111xxxxxxxxxx
fscale. */
- return 3393;
+ return 3395;
}
}
}
@@ -29096,7 +29118,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0101110001xxxx1011110xxxxxxxxxx
f1cvtl. */
- return 3386;
+ return 3388;
}
else
{
@@ -29104,7 +29126,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1101110001xxxx1011110xxxxxxxxxx
f1cvtl2. */
- return 3387;
+ return 3389;
}
}
else
@@ -29115,7 +29137,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0101110101xxxx1011110xxxxxxxxxx
bf1cvtl. */
- return 3382;
+ return 3384;
}
else
{
@@ -29123,7 +29145,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1101110101xxxx1011110xxxxxxxxxx
bf1cvtl2. */
- return 3383;
+ return 3385;
}
}
}
@@ -29137,7 +29159,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0101110011xxxx1011110xxxxxxxxxx
f2cvtl. */
- return 3388;
+ return 3390;
}
else
{
@@ -29145,7 +29167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1101110011xxxx1011110xxxxxxxxxx
f2cvtl2. */
- return 3389;
+ return 3391;
}
}
else
@@ -29156,7 +29178,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0101110111xxxx1011110xxxxxxxxxx
bf2cvtl. */
- return 3384;
+ return 3386;
}
else
{
@@ -29164,7 +29186,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1101110111xxxx1011110xxxxxxxxxx
bf2cvtl2. */
- return 3385;
+ return 3387;
}
}
}
@@ -31163,7 +31185,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx1011101x1xxxxx111111xxxxxxxxxx
fscale. */
- return 3394;
+ return 3396;
}
}
}
@@ -32879,7 +32901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx00111100xxxxxx0000x0xxxxxxxxxx
fdot. */
- return 3450;
+ return 3452;
}
else
{
@@ -32909,7 +32931,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx00111101xxxxxx0000x0xxxxxxxxxx
fdot. */
- return 3452;
+ return 3454;
}
else
{
@@ -32919,7 +32941,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x000111111xxxxxx0000x0xxxxxxxxxx
fmlalb. */
- return 3455;
+ return 3457;
}
else
{
@@ -32927,7 +32949,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x100111111xxxxxx0000x0xxxxxxxxxx
fmlalt. */
- return 3456;
+ return 3458;
}
}
}
@@ -33469,7 +33491,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x010111100xxxxxx1000x0xxxxxxxxxx
fmlallbb. */
- return 3461;
+ return 3463;
}
else
{
@@ -33477,7 +33499,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x110111100xxxxxx1000x0xxxxxxxxxx
fmlalltb. */
- return 3463;
+ return 3465;
}
}
else
@@ -33508,7 +33530,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x0101111x1xxxxxx1000x0xxxxxxxxxx
fmlallbt. */
- return 3462;
+ return 3464;
}
else
{
@@ -33516,7 +33538,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x1101111x1xxxxxx1000x0xxxxxxxxxx
fmlalltt. */
- return 3464;
+ return 3466;
}
}
}
diff --git a/opcodes/aarch64-tbl.h b/opcodes/aarch64-tbl.h
index f96165c..f7dea8f 100644
--- a/opcodes/aarch64-tbl.h
+++ b/opcodes/aarch64-tbl.h
@@ -1814,6 +1814,10 @@
{ \
QLF3(S_S,P_M,S_H), \
}
+#define OP_SVE_SH \
+{ \
+ QLF2(S_S,S_H), \
+}
#define OP_SVE_SHH \
{ \
QLF3(S_S,S_H,S_H), \
@@ -6711,6 +6715,8 @@ const struct aarch64_opcode aarch64_opcode_table[] =
SME_F16F16_INSN("fmls", 0xc1301c08, 0xfff09c18, sme_misc, 0, OP3 (SME_ZA_array_off3_0, SVE_ZnxN, SME_Zm), OP_SVE_HHH, F_OD (4), 0),
SME_F16F16_INSN("fmls", 0xc1a01018, 0xffe19c38, sme_misc, 0, OP3 (SME_ZA_array_off3_0, SME_Znx2, SME_Zmx2), OP_SVE_HHH, F_OD (2), 0),
SME_F16F16_INSN("fmls", 0xc1a11018, 0xffe39c78, sme_misc, 0, OP3 (SME_ZA_array_off3_0, SME_Znx4, SME_Zmx4), OP_SVE_HHH, F_OD (4), 0),
+ SME_F16F16_INSN("fcvt", 0xc1a0e000, 0xfffffc01, sme_misc, 0, OP2 (SME_Zdnx2, SVE_Zn), OP_SVE_SH, F_OD (2), 0),
+ SME_F16F16_INSN("fcvtl", 0xc1a0e001, 0xfffffc01, sme_misc, 0, OP2 (SME_Zdnx2, SVE_Zn), OP_SVE_SH, F_OD (2), 0),
/* SVE2p1 Instructions. */
SVE2p1_INSN("addqv",0x04052000, 0xff3fe000, sve2_urqvs, 0, OP3 (Vd, SVE_Pg3, SVE_Zn), OP_SVE_vUS_BHSD_BHSD, F_OPD_SIZE, 0),