From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10156 invoked by alias); 20 Nov 2012 10:25:47 -0000 Received: (qmail 10002 invoked by uid 22791); 20 Nov 2012 10:25:46 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,MSGID_MULTIPLE_AT,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from service87.mimecast.com (HELO service87.mimecast.com) (91.220.42.44) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 20 Nov 2012 10:25:32 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.21]) by service87.mimecast.com; Tue, 20 Nov 2012 10:25:30 +0000 Received: from e106372vm ([10.1.255.212]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.0); Tue, 20 Nov 2012 10:25:28 +0000 From: "Kyrylo Tkachov" To: Cc: "Ramana Radhakrishnan" , "Richard Earnshaw" References: <00ab01cdc67e$72294a60$567bdf20$@tkachov@arm.com> <50AA74CB.2020908@arm.com> In-Reply-To: <50AA74CB.2020908@arm.com> Subject: RE: [PATCH][ARM] Define predicable attribute for arm_abssi2 and arm_neg_abssi2 Date: Tue, 20 Nov 2012 10:25:00 -0000 Message-ID: <00af01cdc709$53e608f0$fbb21ad0$@tkachov@arm.com> MIME-Version: 1.0 X-MC-Unique: 112112010253103601 Content-Type: multipart/mixed; boundary="----=_NextPart_000_00B0_01CDC709.53E608F0" X-IsSubscribed: yes 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 X-SW-Source: 2012-11/txt/msg01655.txt.bz2 This is a multi-part message in MIME format. ------=_NextPart_000_00B0_01CDC709.53E608F0 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable Content-length: 1394 Hi all, This is the updated version of the patch. It defines the predicable attribute for the equivalent abssi2 and neg_abssi2 patterns in thumb2.md. The previous version (with the changes only to arm.md) has been okayed but not applied and this patch supersedes it. The previous version is: http://gcc.gnu.org/ml/gcc-patches/2012-11/msg01578.html No regressions for arm-none-eabi for qemu. Ok for trunk? Thanks, Kyrill gcc/ChangeLog 2012-11-20 Kyrylo Tkachov * config/arm/arm.md (*arm_abssi2): Define predicable attribute. (*arm_neg_abssi2): Likewise. * config/arm/thumb2.md (*thumb2_abssi2): Likewise. (*thumb2_neg_abssi2): Likewise. -----Original Message----- From: Ramana Radhakrishnan=20 Sent: 19 November 2012 18:05 To: Kyrylo Tkachov Cc: gcc-patches@gcc.gnu.org; Richard Earnshaw Subject: Re: [PATCH][ARM] Define predicable attribute for arm_abssi2 and arm_neg_abssi2 On 11/19/12 17:51, Kyrylo Tkachov wrote: > Hi all, > This patch updates the arm_abssi2 and arm_neg_abssi2 patterns in the ARM > machine description. > We define the predicable attribute based on the alternative. When the > patterns were introduced it was not possible to do that. > Now the second alternative in each of the patterns that supports predication > is defined as predicable. > > No regressions on arm-none-eabi with qemu. > > Ok for trunk? Ok, please apply. Ramana ------=_NextPart_000_00B0_01CDC709.53E608F0 Content-Type: text/plain; name=abssi_predicable.txt Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="abssi_predicable.txt" Content-length: 1541 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -4263,7 +4263,7 @@ (define_insn "*arm_abssi2" eor%?\\t%0, %1, %1, asr #31\;sub%?\\t%0, %0, %1, asr #31" [(set_attr "conds" "clob,*") (set_attr "shift" "1") - ;; predicable can't be set based on the variant, so left as no + (set_attr "predicable" "no, yes") (set_attr "length" "8")] ) =20 @@ -4291,7 +4291,7 @@ (define_insn "*arm_neg_abssi2" eor%?\\t%0, %1, %1, asr #31\;rsb%?\\t%0, %0, %1, asr #31" [(set_attr "conds" "clob,*") (set_attr "shift" "1") - ;; predicable can't be set based on the variant, so left as no + (set_attr "predicable" "no, yes") (set_attr "length" "8")] ) =20 diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index a5302f479f5091d08f4bf1a9ee9b0423692372af..000000000000000000000000000= 0000000000000 100644 --- a/gcc/config/arm/thumb2.md +++ b/gcc/config/arm/thumb2.md @@ -141,7 +141,7 @@ (define_insn "*thumb2_abssi2" eor%?\\t%0, %1, %1, asr #31\;sub%?\\t%0, %0, %1, asr #31" [(set_attr "conds" "clob,*") (set_attr "shift" "1") - ;; predicable can't be set based on the variant, so left as no + (set_attr "predicable" "no, yes") (set_attr "length" "10,8")] ) =20 @@ -155,7 +155,7 @@ (define_insn "*thumb2_neg_abssi2" eor%?\\t%0, %1, %1, asr #31\;rsb%?\\t%0, %0, %1, asr #31" [(set_attr "conds" "clob,*") (set_attr "shift" "1") - ;; predicable can't be set based on the variant, so left as no + (set_attr "predicable" "no, yes") (set_attr "length" "10,8")] ) =20 ------=_NextPart_000_00B0_01CDC709.53E608F0--