Enable the Dot Product extension by default for Armv8.4-a.
authorTamar Christina <tamar.christina@arm.com>
Thu, 9 Nov 2017 15:50:56 +0000 (15:50 +0000)
committerTamar Christina <tamar.christina@arm.com>
Thu, 9 Nov 2017 16:29:31 +0000 (16:29 +0000)
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
gas/testsuite/gas/aarch64/dotproduct_armv8_4.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/dotproduct_armv8_4.s [new file with mode: 0644]
include/ChangeLog
include/opcode/aarch64.h

index 3d032f2236f1dfada5848900eafa0a2c6479d92f..17ebc2ea91177496c813a7546938dd09cc09c0c1 100644 (file)
@@ -1,3 +1,8 @@
+2017-11-06  Tamar Christina  <tamar.christina@arm.com>
+
+       * gas/testsuite/gas/aarch64/dotproduct_armv8_4.s: New.
+       * gas/testsuite/gas/aarch64/dotproduct_armv8_4.d: New.
+
 2017-11-09  Tamar Christina  <tamar.christina@arm.com>
 
        * 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 (file)
index 0000000..121eb11
--- /dev/null
@@ -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 (file)
index 0000000..37538d9
--- /dev/null
@@ -0,0 +1,2 @@
+UDOT   V0.2S, V0.8B, V0.8B
+UDOT   V0.2S, V0.8B, V11.8B
index 0df8e8dcaa68271749cc47bad144f40e18e1b8a5..dc320cb019be538b720b9e49236727317cf2b1d7 100644 (file)
@@ -1,3 +1,7 @@
+2017-11-09  Tamar Christina  <tamar.christina@arm.com>
+
+       * opcode/aarch64.h (AARCH64_ARCH_V8_4): Enable DOTPROD.
+
 2017-11-09  Tamar Christina  <tamar.christina@arm.com>
 
        * opcode/aarch64.h:
index fd17a40e388fcf7daa4d16cf6b86dbc542935f9c..37c4a43559147626345705eba0e80ec3236b5f65 100644 (file)
@@ -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.  */