Commit 8a959ea5 by Richard Henderson Committed by Richard Henderson

ia64.c (ia64_expand_prologue): Mark extra output registers as fixed.

        * config/ia64/ia64.c (ia64_expand_prologue): Mark extra
        output registers as fixed.
        (ia64_function_epilogue): Undo output fixation.

From-SVN: r37029
parent 964686de
2000-10-23 Richard Henderson <rth@cygnus.com>
* config/ia64/ia64.c (ia64_expand_prologue): Mark extra
output registers as fixed.
(ia64_function_epilogue): Undo output fixation.
2000-10-23 Richard Henderson <rth@cygnus.com>
* config/alpha/alpha.md: Add names for all unnamed insns; use
define_insn_and_split in some obvious places.
(lda): Remove.
......
......@@ -1852,6 +1852,12 @@ ia64_expand_prologue ()
reg_names[OUT_REG (i)] = ia64_reg_numbers[inputs + locals + i];
}
/* ??? Temporarily mark the remaining output registers fixed, so
that the register renaming pass does not try to used them after
we've fixed the size of the register frame. */
for (i = current_frame_info.n_output_regs; i < 8; ++i)
fixed_regs[OUT_REG (i)] = 1;
/* Set the frame pointer register name. The regnum is logically loc79,
but of course we'll not have allocated that many locals. Rather than
worrying about renumbering the existing rtxs, we adjust the name. */
......@@ -2475,6 +2481,8 @@ ia64_function_epilogue (file, size)
FILE *file ATTRIBUTE_UNUSED;
int size ATTRIBUTE_UNUSED;
{
int i;
/* Reset from the function's potential modifications. */
XINT (return_address_pointer_rtx, 0) = RETURN_ADDRESS_POINTER_REGNUM;
......@@ -2487,8 +2495,6 @@ ia64_function_epilogue (file, size)
}
if (! TARGET_REG_NAMES)
{
int i;
for (i = 0; i < current_frame_info.n_input_regs; i++)
reg_names[IN_REG (i)] = ia64_input_reg_names[i];
for (i = 0; i < current_frame_info.n_local_regs; i++)
......@@ -2496,6 +2502,10 @@ ia64_function_epilogue (file, size)
for (i = 0; i < current_frame_info.n_output_regs; i++)
reg_names[OUT_REG (i)] = ia64_output_reg_names[i];
}
for (i = 0; i < 8; ++i)
fixed_regs[OUT_REG (i)] = 0;
current_frame_info.initialized = 0;
}
......
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