From: Richard Earnshaw Date: Mon, 6 Jan 2014 15:58:44 +0000 (+0000) Subject: * aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD. X-Git-Tag: releases/gcc-4.9.0~1820 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=328402a94ee4a453a040a59f103e6a9f0fd76904;p=thirdparty%2Fgcc.git * aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD. From-SVN: r206363 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8a0c3f3c42a8..04119620b5e0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2014-01-06 Richard Earnshaw + + * aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD. + 2014-01-06 Martin Jambor PR ipa/59008 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 186db9dca709..fe0aab3b04cd 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -4643,12 +4643,15 @@ aarch64_rtx_costs (rtx x, int code, int outer ATTRIBUTE_UNUSED, extra_cost->mult[GET_MODE (x) == DImode].extend_add; return true; } + *cost += (rtx_cost (XEXP (op0, 0), MULT, 0, speed) + rtx_cost (XEXP (op0, 1), MULT, 1, speed) + rtx_cost (op1, PLUS, 1, speed)); if (speed) *cost += extra_cost->mult[GET_MODE (x) == DImode].add; + + return true; } *cost += (rtx_cost (new_op0, PLUS, 0, speed)