Commit c9d8a813 by Richard Henderson Committed by Richard Henderson

reload1.c (choose_reload_regs): Mind CLASS_CANNOT_CHANGE_SIZE while looking for…

reload1.c (choose_reload_regs): Mind CLASS_CANNOT_CHANGE_SIZE while looking for a register to inherit from.

        * reload1.c (choose_reload_regs): Mind CLASS_CANNOT_CHANGE_SIZE
        while looking for a register to inherit from.

From-SVN: r34420
parent 2aceb30d
2000-06-05 Richard Henderson <rth@cygnus.com>
* reload1.c (choose_reload_regs): Mind CLASS_CANNOT_CHANGE_SIZE
while looking for a register to inherit from.
2000-06-05 Jason Merrill <jason@casey.soma.redhat.com>
* Makefile.in (libgcc.ready): Lose.
......
......@@ -5308,8 +5308,18 @@ choose_reload_regs (chain)
i = REGNO (last_reg) + word;
last_class = REGNO_REG_CLASS (i);
if ((GET_MODE_SIZE (GET_MODE (last_reg))
if (
#ifdef CLASS_CANNOT_CHANGE_SIZE
(TEST_HARD_REG_BIT
(reg_class_contents[CLASS_CANNOT_CHANGE_SIZE], i)
? (GET_MODE_SIZE (GET_MODE (last_reg))
== GET_MODE_SIZE (mode) + word * UNITS_PER_WORD)
: (GET_MODE_SIZE (GET_MODE (last_reg))
>= GET_MODE_SIZE (mode) + word * UNITS_PER_WORD))
#else
(GET_MODE_SIZE (GET_MODE (last_reg))
>= GET_MODE_SIZE (mode) + word * UNITS_PER_WORD)
#endif
&& reg_reloaded_contents[i] == regno
&& TEST_HARD_REG_BIT (reg_reloaded_valid, i)
&& HARD_REGNO_MODE_OK (i, rld[r].mode)
......
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