From patchwork Thu Aug 2 16:58:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Siddhesh Poyarekar X-Patchwork-Id: 952893 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-483031-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=sourceware.org Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="LmCsekUP"; 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 41hGbt6Qttz9s2g for ; Fri, 3 Aug 2018 02:59:05 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id; q=dns; s=default; b=a+3lieFL4FYD z4LWeHG4DvVRM6/tha+CRU5tll8CPK4ZddlWm9adv9R4KTxA/up8xFvbGd4E014d TB8UnUU4hWyd0nrn9c7TmA6ULGf6bZg2YqScC92iiq/jnAK+NpAarPqG/V3TOGl6 HbCqh6FrBLK3tbajbfgUNqUqput4/+c= 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:from :to:cc:subject:date:message-id; s=default; bh=7DqFrpIX4qox6F8Ej2 hYRM+gF9w=; b=LmCsekUPirerGIr0Cl1udHbG7DYKxHfrmeJdwifHFRpr+8fRzO nUG7QlK+hlFoTGC6nAJGtVflNW3NuwzMJgjKP9gIYveBnkHhsrcI8mrBVs4joDdh johu3nVMolmaxDnVioLj/pYMJQvrlxvZO/ODzot45G99CYZHZpMk8JJf4= Received: (qmail 88747 invoked by alias); 2 Aug 2018 16:58:57 -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 88108 invoked by uid 89); 2 Aug 2018 16:58:56 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.1 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_NEUTRAL autolearn=ham version=3.3.2 spammy= X-HELO: homiemail-a126.g.dreamhost.com Received: from sub5.mail.dreamhost.com (HELO homiemail-a126.g.dreamhost.com) (208.113.200.129) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 02 Aug 2018 16:58:55 +0000 Received: from homiemail-a126.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a126.g.dreamhost.com (Postfix) with ESMTP id CC5F760001A05; Thu, 2 Aug 2018 09:58:52 -0700 (PDT) Received: from devel.in.reserved-bit.com (unknown [202.189.238.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: siddhesh@gotplt.org) by homiemail-a126.g.dreamhost.com (Postfix) with ESMTPSA id 67D0A60005408; Thu, 2 Aug 2018 09:58:51 -0700 (PDT) From: Siddhesh Poyarekar To: gcc-patches@gcc.gnu.org Cc: james.greenhalgh@arm.com, kyrylo.tkachov@foss.arm.com Subject: [PATCH] [aarch64][v2] Fix falkor pipeline description for dup Date: Thu, 2 Aug 2018 22:28:37 +0530 Message-Id: <20180802165837.23379-1-siddhesh@sourceware.org> There was a typo in the pipeline description where DUP was assigned to the vector pipes for quad mode ops when it really only uses the VTOG pipes. Fixing this does not show any noticeable difference in performance (there's a very small bump of 1.7% in x264 but that's about it) in my tests but is the more precise description of operations for falkor. Bootstrapped and tested with --with-cpu=falkor to confirm that there are no regressions. Siddhesh Changes from v1: - Fixed up ChangeLog entry - Replaced falkor_gtov,falkor_gtov with falkor_gtov*2 * config/aarch64/falkor.md (falkor_am_1_vxvy_vxvy): Move neon_dup_q to... (falkor_am_1_gtov_gtov): ... a new insn reservation. CC: james.greenhalgh@arm.com CC: kyrylo.tkachov@foss.arm.com --- gcc/config/aarch64/falkor.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/config/aarch64/falkor.md b/gcc/config/aarch64/falkor.md index 5cbc5150ef3..45cbff93b24 100644 --- a/gcc/config/aarch64/falkor.md +++ b/gcc/config/aarch64/falkor.md @@ -322,6 +322,12 @@ (eq_attr "type" "neon_from_gp_q")) "falkor_gtov,falkor_gtov") +;; DUP does not use vector pipes in Q mode, only gtov+gtov. +(define_insn_reservation "falkor_am_1_gtov_gtov" 1 + (and (eq_attr "tune" "falkor") + (eq_attr "type" "neon_dup_q")) + "falkor_gtov*2") + ;; neon_to_gp_q is used for 32-bit ARM instructions that move 64-bits of data ;; so no use needed here. @@ -337,7 +343,7 @@ (define_insn_reservation "falkor_am_1_vxvy_vxvy" 1 (and (eq_attr "tune" "falkor") - (eq_attr "type" "neon_bsl_q,neon_dup_q,neon_ext_q,neon_move_q,neon_rev_q,neon_tbl1_q,neon_permute_q")) + (eq_attr "type" "neon_bsl_q,neon_ext_q,neon_move_q,neon_rev_q,neon_tbl1_q,neon_permute_q")) "falkor_vxvy+falkor_vxvy") (define_insn_reservation "falkor_am_2_vxvy" 2