From 981b557a488f7c3179dee1e34515ca9b10cf885c Mon Sep 17 00:00:00 2001 From: Tamar Christina Date: Thu, 9 Nov 2017 15:50:56 +0000 Subject: [PATCH] Enable the Dot Product extension by default for Armv8.4-a. include/ * opcode/aarch64.h (AARCH64_ARCH_V8_4): Enable DOTPROD. gas/testsuite * gas/aarch64/dotproduct_armv8_4.s: New. * gas/aarch64/dotproduct_armv8_4.d: New. --- gas/ChangeLog | 5 +++++ gas/testsuite/gas/aarch64/dotproduct_armv8_4.d | 10 ++++++++++ gas/testsuite/gas/aarch64/dotproduct_armv8_4.s | 2 ++ include/ChangeLog | 4 ++++ include/opcode/aarch64.h | 3 ++- 5 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 gas/testsuite/gas/aarch64/dotproduct_armv8_4.d create mode 100644 gas/testsuite/gas/aarch64/dotproduct_armv8_4.s diff --git a/gas/ChangeLog b/gas/ChangeLog index 3d032f2..17ebc2e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2017-11-06 Tamar Christina + + * gas/testsuite/gas/aarch64/dotproduct_armv8_4.s: New. + * gas/testsuite/gas/aarch64/dotproduct_armv8_4.d: New. + 2017-11-09 Tamar Christina * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.d: New. diff --git a/gas/testsuite/gas/aarch64/dotproduct_armv8_4.d b/gas/testsuite/gas/aarch64/dotproduct_armv8_4.d new file mode 100644 index 0000000..121eb11 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dotproduct_armv8_4.d @@ -0,0 +1,10 @@ +#as: -march=armv8.4-a +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0+ <.*>: +[^:]+:\s+2e809400 udot v0.2s, v0.8b, v0.8b +[^:]+:\s+2e8b9400 udot v0.2s, v0.8b, v11.8b diff --git a/gas/testsuite/gas/aarch64/dotproduct_armv8_4.s b/gas/testsuite/gas/aarch64/dotproduct_armv8_4.s new file mode 100644 index 0000000..37538d9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dotproduct_armv8_4.s @@ -0,0 +1,2 @@ +UDOT V0.2S, V0.8B, V0.8B +UDOT V0.2S, V0.8B, V11.8B diff --git a/include/ChangeLog b/include/ChangeLog index 0df8e8d..dc320cb 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,5 +1,9 @@ 2017-11-09 Tamar Christina + * opcode/aarch64.h (AARCH64_ARCH_V8_4): Enable DOTPROD. + +2017-11-09 Tamar Christina + * opcode/aarch64.h: (aarch64_opnd): Add AARCH64_OPND_Va, AARCH64_OPND_MASK, AARCH64_OPND_IMM_2, AARCH64_OPND_ADDR_OFFSET diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h index fd17a40..37c4a43 100644 --- a/include/opcode/aarch64.h +++ b/include/opcode/aarch64.h @@ -81,7 +81,8 @@ typedef uint32_t aarch64_insn; | AARCH64_FEATURE_RCPC \ | AARCH64_FEATURE_COMPNUM) #define AARCH64_ARCH_V8_4 AARCH64_FEATURE (AARCH64_ARCH_V8_3, \ - AARCH64_FEATURE_V8_4) + AARCH64_FEATURE_V8_4 \ + | AARCH64_FEATURE_DOTPROD) #define AARCH64_ARCH_NONE AARCH64_FEATURE (0, 0) #define AARCH64_ANY AARCH64_FEATURE (-1, 0) /* Any basic core. */ -- 2.7.4