aboutsummaryrefslogtreecommitdiff
path: root/include/opcode/arm.h
diff options
context:
space:
mode:
authorMatthew Malcomson <matthew.malcomson@arm.com>2019-11-07 17:20:08 +0000
committerMatthew Malcomson <matthew.malcomson@arm.com>2019-11-07 17:20:08 +0000
commit616ce08e1cc98c28c42bc2afed6b92df449c7b00 (patch)
treecbc0e78a74f954d5a40177b1887de248fa0d400f /include/opcode/arm.h
parent8382113fdb028386a335e8dee9ac04ebc8cf04a1 (diff)
downloadgdb-616ce08e1cc98c28c42bc2afed6b92df449c7b00.zip
gdb-616ce08e1cc98c28c42bc2afed6b92df449c7b00.tar.gz
gdb-616ce08e1cc98c28c42bc2afed6b92df449c7b00.tar.bz2
[Patch][binutils][arm] Armv8.6-A Matrix Multiply extension [9/10]
Hi, This patch is part of a series that adds support for Armv8.6-A (Matrix Multiply and BFloat16 extensions) to binutils. This patch introduces the Matrix Multiply (Int8, F32, F64) extensions to the arm backend. The following Matrix Multiply instructions are added: vummla, vsmmla, vusmmla, vusdot, vsudot[1]. [1]https://developer.arm.com/docs/ddi0597/latest/simd-and-floating-point-instructions-alphabetic-order Committed on behalf of Mihail Ionescu. gas/ChangeLog: 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com> * config/tc-arm.c (arm_ext_i8mm): New feature set. (do_vusdot): New. (do_vsudot): New. (do_vsmmla): New. (do_vummla): New. (insns): Add vsmmla, vummla, vusmmla, vusdot, vsudot mnemonics. (armv86a_ext_table): Add i8mm extension. (arm_extensions): Move bf16 extension to context sensitive table. (armv82a_ext_table, armv84a_ext_table, armv85a_ext_table): Move bf16 extension to context sensitive table. (armv86a_ext_table): Add i8mm extension. * doc/c-arm.texi: Document i8mm extension. * testsuite/gas/arm/i8mm.s: New test. * testsuite/gas/arm/i8mm.d: New test. * testsuite/gas/arm/bfloat17-cmdline-bad-3.d: Update test. include/ChangeLog: 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com> * opcode/arm.h (ARM_EXT2_I8MM): New feature macro. opcodes/ChangeLog: 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com> * arm-dis.c (neon_opcodes): Add i8mm SIMD instructions. Regression tested on arm-none-eabi. Is this ok for trunk? Regards, Mihail
Diffstat (limited to 'include/opcode/arm.h')
-rw-r--r--include/opcode/arm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/opcode/arm.h b/include/opcode/arm.h
index 7aea4d6..982da5a 100644
--- a/include/opcode/arm.h
+++ b/include/opcode/arm.h
@@ -75,6 +75,7 @@
#define ARM_EXT2_V8_1M_MAIN 0x00008000 /* ARMv8.1-M Mainline. */
#define ARM_EXT2_V8_6A 0x00010000 /* ARM V8.6A. */
#define ARM_EXT2_BF16 0x00020000 /* ARMv8 bfloat16. */
+#define ARM_EXT2_I8MM 0x00040000 /* ARMv8.6A i8mm. */
/* Co-processor space extensions. */
#define ARM_CEXT_XSCALE 0x00000001 /* Allow MIA etc. */