Message ID | 00af01cdc709$53e608f0$fbb21ad0$@tkachov@arm.com |
---|---|
State | New |
Headers | show |
On 20/11/12 10:25, Kyrylo Tkachov wrote: > 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 <kyrylo.tkachov@arm.com> > > * 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 > 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 > OK. Thanks. R.
Thanks for the review. As I do not have write access, can someone please apply? http://gcc.gnu.org/ml/gcc-patches/2012-11/msg01655.html Thanks, Kyrill -----Original Message----- From: Richard Earnshaw Sent: 20 November 2012 10:32 To: Kyrylo Tkachov Cc: gcc-patches@gcc.gnu.org; Ramana Radhakrishnan Subject: Re: [PATCH][ARM] Define predicable attribute for arm_abssi2 and arm_neg_abssi2 On 20/11/12 10:25, Kyrylo Tkachov wrote: > 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 <kyrylo.tkachov@arm.com> > > * 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 > 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 > OK. Thanks. R.
--- 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")] ) @@ -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")] ) diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index a5302f479f5091d08f4bf1a9ee9b0423692372af..0000000000000000000000000000000000000000 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")] ) @@ -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")] )