Hi Tamar,

On 01/09/17 14:33, Tamar Christina wrote:
Hi All,

This patch adds the instructions for Dot Product to ARM along
with the intrinsics and vectorizer pattern.

Armv8.2-a dot product supports 8-bit element values both
signed and unsigned.

Dot product is available from Armv8.2-a and onwards.

Regtested and bootstrapped on arm-none-eabi and no issues.

Ok for trunk?

This is ok once the prerequisites are approved with one ChangeLog nit.

Kyrill

gcc/
2017-09-01  Tamar Christina  <tamar.christ...@arm.com>

        * config/arm/arm-builtins.c (arm_unsigned_uternop_qualifiers): New.
        (UTERNOP_QUALIFIERS, arm_umac_lane_qualifiers, UMAC_LANE_QUALIFIERS): 
New.
        * config/arm/arm_neon_builtins.def (sdot, udot, sdot_lane, udot_lane): 
new.
        * config/arm/iterators.md (DOTPROD, DOT_MODE, dot_mode): New.
        (UNSPEC_DOT_S, UNSPEC_DOT_U, opsuffix): New.
        * config/arm/neon.md (neon_<sup>dot<dot_mode>): New.
        (neon_<sup>dot_lane<dot_mode>, <sup>dot_prod<dot_mode>): New.
        * config/arm/types.md (neon_dot, neon_dot_q): New.
        * config/arm/unspecs.md (UNSPEC_DOT_S, UNSPEC_DOT_U): New.


diff --git a/gcc/config/arm/iterators.md b/gcc/config/arm/iterators.md
index 
7acbaf1bb40a4f270e75968804546508f7839e49..139e09fd929e17216ad9383505f1453a73d071fb
 100644
--- a/gcc/config/arm/iterators.md

--snip---

 ;;----------------------------------------------------------------------------
 ;; Code attributes
 ;;----------------------------------------------------------------------------
@@ -816,6 +822,7 @@
   (UNSPEC_VSRA_S_N "s") (UNSPEC_VSRA_U_N "u")
   (UNSPEC_VRSRA_S_N "s") (UNSPEC_VRSRA_U_N "u")
   (UNSPEC_VCVTH_S "s") (UNSPEC_VCVTH_U "u")
+  (UNSPEC_DOT_S "s") (UNSPEC_DOT_U "u")
 ])

In your ChangeLog you list this as "New" whereas your patch just adds them to the 
"sup" int_attr.

Reply via email to