Commit 3c243b51 by Richard Kenner

(secondary_reload_class): Return CR_REGS for larger than word memory,

and BP_REGS for part-word mem with no DW.

From-SVN: r2899
parent 3055b3a1
......@@ -724,13 +724,17 @@ secondary_reload_class (class, mode, in)
code = MEM;
}
/* If we are transferring between memory and a multi-word mode or between
memory and a mode smaller than a word without DW being enabled, we need
BP. */
/* If we are transferring between memory and a multi-word mode, we need
CR. */
if (code == MEM
&& (GET_MODE_SIZE (mode) > UNITS_PER_WORD
|| (! TARGET_DW_ENABLE && GET_MODE_SIZE (mode) < UNITS_PER_WORD)))
if (code == MEM && GET_MODE_SIZE (mode) > UNITS_PER_WORD)
return CR_REGS;
/* If between memory and a mode smaller than a word without DW being
enabled, we need BP. */
if (code == MEM && ! TARGET_DW_ENABLE
&& GET_MODE_SIZE (mode) < UNITS_PER_WORD)
return BP_REGS;
/* Otherwise, we can place anything into GENERAL_REGS and can put
......
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