Commit 41bd3d41 by Richard Henderson Committed by Richard Henderson

alpha.c (secondary_reload_class): Don't allocate a secondary for integral mode…

alpha.c (secondary_reload_class): Don't allocate a secondary for integral mode memories into FLOAT_REGS.

        * alpha.c (secondary_reload_class): Don't allocate a secondary
        for integral mode memories into FLOAT_REGS.  Rearrange the more
        complicated memory expression inward.

From-SVN: r31606
parent 38544f54
2000-01-25 Richard Henderson <rth@cygnus.com>
* alpha.c (secondary_reload_class): Don't allocate a secondary
for integral mode memories into FLOAT_REGS. Rearrange the more
complicated memory expression inward.
2000-01-25 Zack Weinberg <zack@wolery.cumb.org>
* inclhack.def: Fixes to play nicer with FreeBSD, and
......
......@@ -1095,16 +1095,14 @@ secondary_reload_class (class, mode, x, in)
rtx x;
int in;
{
if (GET_CODE (x) == MEM
|| (GET_CODE (x) == REG && REGNO (x) >= FIRST_PSEUDO_REGISTER)
|| (GET_CODE (x) == SUBREG
&& (GET_CODE (SUBREG_REG (x)) == MEM
|| (GET_CODE (SUBREG_REG (x)) == REG
&& REGNO (SUBREG_REG (x)) >= FIRST_PSEUDO_REGISTER))))
{
if (class == FLOAT_REGS && mode != DImode)
return GENERAL_REGS;
if ((mode == QImode || mode == HImode) && ! TARGET_BWX)
if ((mode == QImode || mode == HImode) && ! TARGET_BWX)
{
if (GET_CODE (x) == MEM
|| (GET_CODE (x) == REG && REGNO (x) >= FIRST_PSEUDO_REGISTER)
|| (GET_CODE (x) == SUBREG
&& (GET_CODE (SUBREG_REG (x)) == MEM
|| (GET_CODE (SUBREG_REG (x)) == REG
&& REGNO (SUBREG_REG (x)) >= FIRST_PSEUDO_REGISTER))))
{
if (!in || !aligned_memory_operand(x, mode))
return GENERAL_REGS;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment