aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2014-01-06 15:58:44 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2014-01-06 15:58:44 +0000
commit328402a94ee4a453a040a59f103e6a9f0fd76904 (patch)
treed9bd05d903c7e01a53145b5501b871a6d0ef5aa2 /gcc
parent0a15a50e83b0799cdf18adc39ba7945134b98685 (diff)
downloadgcc-328402a94ee4a453a040a59f103e6a9f0fd76904.zip
gcc-328402a94ee4a453a040a59f103e6a9f0fd76904.tar.gz
gcc-328402a94ee4a453a040a59f103e6a9f0fd76904.tar.bz2
* aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.
From-SVN: r206363
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/aarch64/aarch64.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8a0c3f3..0411962 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2014-01-06 Richard Earnshaw <rearnsha@arm.com>
+
+ * aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.
+
2014-01-06 Martin Jambor <mjambor@suse.cz>
PR ipa/59008
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 186db9d..fe0aab3 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)