From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 129694 invoked by alias); 19 Oct 2015 23:40:09 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 129684 invoked by uid 89); 19 Oct 2015 23:40:09 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.0 required=5.0 tests=AWL,BAYES_50,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD,T_MANY_HDRS_LCASE autolearn=no version=3.3.2 X-HELO: usmailout2.samsung.com Received: from mailout2.w2.samsung.com (HELO usmailout2.samsung.com) (211.189.100.12) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 19 Oct 2015 23:40:07 +0000 Received: from uscpsbgm2.samsung.com (u115.gpu85.samsung.co.kr [203.254.195.115]) by mailout2.w2.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NWH001R7R2T16A0@mailout2.w2.samsung.com> for gcc-patches@gcc.gnu.org; Mon, 19 Oct 2015 19:40:05 -0400 (EDT) Received: from ussync1.samsung.com ( [203.254.195.81]) by uscpsbgm2.samsung.com (USCPMTA) with SMTP id 7E.A8.29819.55F75265; Mon, 19 Oct 2015 19:40:05 -0400 (EDT) Received: from [172.31.207.192] ([105.140.31.209]) by ussync1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NWH0079ZR2SO410@ussync1.samsung.com>; Mon, 19 Oct 2015 19:40:05 -0400 (EDT) To: gcc-patches@gcc.gnu.org Cc: Marcus.Shawcroft@arm.com, kyrylo.tkachov@arm.com From: Evandro Menezes Subject: [PATCH][AArch64] Replace insn to zero up DF register Message-id: <56257F53.2000905@samsung.com> Date: Mon, 19 Oct 2015 23:41:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-version: 1.0 Content-type: multipart/mixed; boundary=------------020001060608070802090209 X-IsSubscribed: yes X-SW-Source: 2015-10/txt/msg01807.txt.bz2 This is a multi-part message in MIME format. --------------020001060608070802090209 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-length: 244 In the existing targets, it seems that it's always faster to zero up a DF register with "movi %d0, #0" instead of "fmov %d0, xzr". This patch modifies the respective pattern. Please, commit if it's alright. Thank you, -- Evandro Menezes --------------020001060608070802090209 Content-Type: text/x-patch; name="0001-AArch64-Replace-insn-to-zero-up-DF-register.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0001-AArch64-Replace-insn-to-zero-up-DF-register.patch" Content-length: 1469 >From 429b1d70a7eca76c96250fec6ec5269a7a661a4c Mon Sep 17 00:00:00 2001 From: Evandro Menezes Date: Mon, 19 Oct 2015 18:31:48 -0500 Subject: [PATCH] [AArch64] Replace insn to zero up DF register gcc/ * config/aarch64/aarch64.md (*movdf_aarch64): Add "movi %d0, #0" to zero up DF register. --- gcc/config/aarch64/aarch64.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 5b7f2fd..5f00686 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -1156,21 +1156,22 @@ ) (define_insn "*movdf_aarch64" - [(set (match_operand:DF 0 "nonimmediate_operand" "=w, ?r,w,w ,w,m,r,m ,r") - (match_operand:DF 1 "general_operand" "?rY, w,w,Ufc,m,w,m,rY,r"))] + [(set (match_operand:DF 0 "nonimmediate_operand" "=w,?r,w,w,w ,w,m,r,m ,r") + (match_operand:DF 1 "general_operand" "?r, w,w,Y,Ufc,m,w,m,rY,r"))] "TARGET_FLOAT && (register_operand (operands[0], DFmode) || aarch64_reg_or_fp_zero (operands[1], DFmode))" "@ fmov\\t%d0, %x1 fmov\\t%x0, %d1 fmov\\t%d0, %d1 + movi\\t%d0, #0 fmov\\t%d0, %1 ldr\\t%d0, %1 str\\t%d1, %0 ldr\\t%x0, %1 str\\t%x1, %0 mov\\t%x0, %x1" - [(set_attr "type" "f_mcr,f_mrc,fmov,fconstd,\ + [(set_attr "type" "f_mcr,f_mrc,fmov,neon_move,fconstd,\ f_loadd,f_stored,load1,store1,mov_reg")] ) -- 2.1.0.243.g30d45f7 --------------020001060608070802090209--