diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2014-01-06 15:58:44 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2014-01-06 15:58:44 +0000 |
commit | 328402a94ee4a453a040a59f103e6a9f0fd76904 (patch) | |
tree | d9bd05d903c7e01a53145b5501b871a6d0ef5aa2 /gcc | |
parent | 0a15a50e83b0799cdf18adc39ba7945134b98685 (diff) | |
download | gcc-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/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 3 |
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) |