diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2005-10-03 22:07:08 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2005-10-03 22:07:08 +0000 |
commit | 9c24200c8dff9d87007296da7743741df0df3c85 (patch) | |
tree | 9b5f837db319aec6b758d3c71b8d10180614f49c | |
parent | 37150080504338dc8288ac8eeb0cc2636031fd07 (diff) | |
download | gcc-9c24200c8dff9d87007296da7743741df0df3c85.zip gcc-9c24200c8dff9d87007296da7743741df0df3c85.tar.gz gcc-9c24200c8dff9d87007296da7743741df0df3c85.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 957ac6c..9bdcb05 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-10-03 Kaz Kojima <kkojima@gcc.gnu.org> + + * config/sh/sh.c (sh_register_move_cost): Add case for moving + from T_REGS to FP register class. + 2005-10-03 Richard Henderson <rth@redhat.com> PR 24135 diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 8e6333b..c90185a 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; |