Commit 78b583fe by Aldy Hernandez Committed by Aldy Hernandez

* regclass.c (choose_hard_reg_mode): Handle vector arguments.

From-SVN: r47338
parent 3cc9a32f
2001-11-25 Aldy Hernandez <aldyh@redhat.com>
* regclass.c (choose_hard_reg_mode): Handle vector arguments.
2001-11-26 Alan Modra <amodra@bigpond.net.au>
* final.c: (insn_lengths): Make it an int *, so that large jump
......
......@@ -713,6 +713,26 @@ choose_hard_reg_mode (regno, nregs)
if (found_mode != VOIDmode)
return found_mode;
for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_FLOAT);
mode != VOIDmode;
mode = GET_MODE_WIDER_MODE (mode))
if (HARD_REGNO_NREGS (regno, mode) == nregs
&& HARD_REGNO_MODE_OK (regno, mode))
found_mode = mode;
if (found_mode != VOIDmode)
return found_mode;
for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_INT);
mode != VOIDmode;
mode = GET_MODE_WIDER_MODE (mode))
if (HARD_REGNO_NREGS (regno, mode) == nregs
&& HARD_REGNO_MODE_OK (regno, mode))
found_mode = mode;
if (found_mode != VOIDmode)
return found_mode;
/* Iterate over all of the CCmodes. */
for (m = (unsigned int) CCmode; m < (unsigned int) NUM_MACHINE_MODES; ++m)
{
......
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