summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4>2014-11-19 14:40:26 +0000
committerjiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4>2014-11-19 14:40:26 +0000
commitaa577f0f642afbbdd4820dac4c8c6be17dc4d827 (patch)
treed12163c0842e97969ad0b96d777f324cf9ac28a6
parentf4ef65f4821d853b1f23b592a104714449bcfab8 (diff)
downloadgcc-aa577f0f642afbbdd4820dac4c8c6be17dc4d827.tar.gz
[AArch64] Adjust generic move costs
2014-11-19 Wilco Dijkstra <wdijkstr@arm.com> PR target/61915 * config/aarch64/aarch64.c (generic_regmove_cost): Increase FP move cost. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217780 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/aarch64/aarch64.c6
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2c13f13e4a2..45e12cbd160 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2014-11-19 Wilco Dijkstra <wdijkstr@arm.com>
+
+ PR target/61915
+ * config/aarch64/aarch64.c (generic_regmove_cost): Increase FP move
+ cost.
+
2014-11-19 Marek Polacek <polacek@redhat.com>
PR sanitizer/63690
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index a53f942ad7f..38321237eb3 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -229,8 +229,10 @@ __extension__
static const struct cpu_regmove_cost generic_regmove_cost =
{
NAMED_PARAM (GP2GP, 1),
- NAMED_PARAM (GP2FP, 2),
- NAMED_PARAM (FP2GP, 2),
+ /* Avoid the use of slow int<->fp moves for spilling by setting
+ their cost higher than memmov_cost. */
+ NAMED_PARAM (GP2FP, 5),
+ NAMED_PARAM (FP2GP, 5),
NAMED_PARAM (FP2FP, 2)
};