From: kkojima Date: Mon, 3 Oct 2005 22:07:08 +0000 (+0000) Subject: * config/sh/sh.c (sh_register_move_cost): Add case for moving X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=b7e76f115d5d31fc02b822bd68eea77008f4287f * config/sh/sh.c (sh_register_move_cost): Add case for moving from T_REGS to FP register class. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104916 138bc75d-0d04-0410-961f-82ee72b054a4 --- 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;