From 9c24200c8dff9d87007296da7743741df0df3c85 Mon Sep 17 00:00:00 2001 From: Kaz Kojima Date: Mon, 3 Oct 2005 22:07:08 +0000 Subject: [PATCH] sh.c (sh_register_move_cost): Add case for moving from T_REGS to FP register class. * config/sh/sh.c (sh_register_move_cost): Add case for moving from T_REGS to FP register class. From-SVN: r104916 --- gcc/ChangeLog | 5 +++++ gcc/config/sh/sh.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 957ac6cfdd2..9bdcb056f40 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-10-03 Kaz Kojima + + * config/sh/sh.c (sh_register_move_cost): Add case for moving + from T_REGS to FP register class. + 2005-10-03 Richard Henderson PR 24135 diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 8e6333bd432..c90185abd23 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -9491,6 +9491,9 @@ sh_register_move_cost (enum machine_mode mode, && REGCLASS_HAS_FP_REG (dstclass)) return 4; + if (REGCLASS_HAS_FP_REG (dstclass) && srcclass == T_REGS) + return ((TARGET_HARD_SH4 && !optimize_size) ? 10 : 7); + if ((REGCLASS_HAS_FP_REG (dstclass) && srcclass == MAC_REGS) || (dstclass == MAC_REGS && REGCLASS_HAS_FP_REG (srcclass))) return 9; -- 2.30.2