sh.c (sh_secondary_reload): Handle loading a float constant to fpul.

* config/sh/sh.c (sh_secondary_reload): Handle loading a float
	constant to fpul.

From-SVN: r132764
This commit is contained in:
Kaz Kojima 2008-02-29 12:37:34 +00:00
parent a9cbbfed45
commit d973ac5a9f
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2008-02-29 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.c (sh_secondary_reload): Handle loading a float
constant to fpul.
2008-02-28 Richard Sandiford <rsandifo@nildram.co.uk>
* simplify-rtx.c (simplify_unary_operation_1): Extend the handling

View File

@ -10875,8 +10875,10 @@ sh_secondary_reload (bool in_p, rtx x, enum reg_class class,
return GENERAL_REGS;
if (class == FPUL_REGS && immediate_operand (x, mode))
{
if (satisfies_constraint_I08 (x))
if (satisfies_constraint_I08 (x) || fp_zero_operand (x))
return GENERAL_REGS;
else if (mode == SFmode)
return FP_REGS;
sri->icode = CODE_FOR_reload_insi__i_fpul;
return NO_REGS;
}