Message ID | 54638D1E.4090505@arm.com |
---|---|
State | New |
Headers | show |
On Wed, Nov 12, 2014 at 4:38 PM, Kyrill Tkachov <kyrylo.tkachov@arm.com> wrote: > Hi all, > > This is a much-delayed respin of the patch in response to Richards feedback > at: > http://gcc.gnu.org/ml/gcc-patches/2014-05/msg00068.html > > We now let recursion do its magic and just add the cost of the arithmetic > operation on top. > > Tested on arm-none-eabi > > Ok for trunk? Ok. Ramana > > 2014-11-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> > > * config/arm/arm.c (arm_new_rtx_costs, case PLUS, MINUS): > Add cost of alu.arith in simple SImode case.
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 4bada64..f1cd242 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -9615,6 +9615,8 @@ arm_new_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer_code, *cost += rtx_cost (XEXP (x, 1), code, 1, speed_p); return true; } + else if (speed_p) + *cost += extra_cost->alu.arith; return false; } @@ -9850,6 +9852,9 @@ arm_new_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer_code, *cost += rtx_cost (XEXP (x, 0), PLUS, 0, speed_p); return true; } + else if (speed_p) + *cost += extra_cost->alu.arith; + return false; }