From patchwork Thu Feb 7 09:28:14 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kyrill Tkachov X-Patchwork-Id: 1037902 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-495429-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=foss.arm.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="b2pPS74K"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 43wCfj45kvz9sLw for ; Thu, 7 Feb 2019 20:28:27 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:subject:content-type; q= dns; s=default; b=OlhdNhQK2jqkJgNj2mrnnXKHrVMc6K6LM9DPk1shrEGJmE Qvgw/s8/CXJlBA2TpgLMl2bXvIZF0SaZNop+j269et7X8gL2Gl47oYtuZnMzZHOV ouC8m68pgDy0OxnJI+noxuzn32R32kl6YYCtXUe0XfVnYdLBpvC1n6QZ+z01Q= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:subject:content-type; s= default; bh=i+tUO4ZlGPCrIpxuCSXR/zGgl7w=; b=b2pPS74KWxi0MA/SIprj wrPh5FqTQPZO0ImvXYhtsHo1kIclyNWcwvBeOYIBl2voRE7b1XQSVK1dX3LD6yh5 YQNXh8uJV4icbmii2ZAsSWuHdhymYB9h/LEM0Tf/XA/WmizGtT41zNfBOnRFTglt Xs9Vo0SimUrAbrimXS0cP8A= Received: (qmail 38442 invoked by alias); 7 Feb 2019 09:28:20 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 38429 invoked by uid 89); 7 Feb 2019 09:28:20 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-24.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_LAZY_DOMAIN_SECURITY, URIBL_ABUSE_SURBL autolearn=ham version=3.3.2 spammy= X-HELO: foss.arm.com Received: from foss.arm.com (HELO foss.arm.com) (217.140.101.70) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 07 Feb 2019 09:28:18 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5826BEBD for ; Thu, 7 Feb 2019 01:28:17 -0800 (PST) Received: from [10.2.207.77] (e100706-lin.cambridge.arm.com [10.2.207.77]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D4A873F589 for ; Thu, 7 Feb 2019 01:28:16 -0800 (PST) Message-ID: <5C5BFA2E.9040104@foss.arm.com> Date: Thu, 07 Feb 2019 09:28:14 +0000 From: Kyrill Tkachov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org" Subject: [PATCH][arm] Use neon_dot_q type for 128-bit V[US]DOT instructions where appropriate Hi all, For the Dot Product instructions we have the scheduling types neon_dot and neon_dot_q for the 128-bit versions. It seems that we're only using the former though, not assigning the neon_dot_q type anywhere. This patch fixes that by adding the mode attribute suffix to the type, similar to how we do it for other types in neon.md. Bootstrapped and tested on arm-none-linux-gnueabihf. Committing to trunk. Thanks, Kyrill 2019-07-02 Kyrylo Tkachov * config/arm/neon.md (neon_dot): Use neon_dot for type. (neon_dot_lane): Likewise. diff --git a/gcc/config/arm/neon.md b/gcc/config/arm/neon.md index f9d7ba35b137fed383f84eecbe81dd942943d216..4a2c7b99881e96fbff30a53d370ff0df1416c124 100644 --- a/gcc/config/arm/neon.md +++ b/gcc/config/arm/neon.md @@ -3542,7 +3542,7 @@ (define_insn "neon_dot" DOTPROD)))] "TARGET_DOTPROD" "vdot.\\t%0, %2, %3" - [(set_attr "type" "neon_dot")] + [(set_attr "type" "neon_dot")] ) ;; These instructions map to the __builtins for the Dot Product @@ -3561,7 +3561,7 @@ (define_insn "neon_dot_lane" = GEN_INT (NEON_ENDIAN_LANE_N (V8QImode, INTVAL (operands[4]))); return "vdot.\\t%0, %2, %P3[%c4]"; } - [(set_attr "type" "neon_dot")] + [(set_attr "type" "neon_dot")] ) ;; These expands map to the Dot Product optab the vectorizer checks for.