+2001-01-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (HARD_REGNO_RENAME_OK): Delete.
+ (EPILOGUE_USES): Define.
+ (INITIAL_ELIMINATION_OFFSET): Current prologue code does not
+ automatically stack the LR if it isn't live.
+
Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
: \
((FROM) == HI_REGS || (TO) == HI_REGS) ? 4 : 2)
\f
-/* Register Renaming Parameters. */
-
-/* A C expression that is nonzero if hard register number TO can be
- considered for use as a rename register for FROM.
-
- If the return register isn't already live, we mustn't use it. */
-
-#define HARD_REGNO_RENAME_OK(FROM,TO) \
- ((TO) != LR_REGNUM || regs_ever_live[LR_REGNUM])
-
-\f
/* Stack layout; function entry, exit and calling. */
/* Define this if pushing a word on the stack
#define FUNCTION_EPILOGUE(STREAM, SIZE) \
output_func_epilogue (SIZE)
+#define EPILOGUE_USES(REGNO) (reload_completed && (REGNO) == LR_REGNUM)
+
/* Determine if the epilogue should be output as RTL.
You should override this if you define FUNCTION_EXTRA_EPILOGUE. */
#define USE_RETURN_INSN(ISCOND) \
if (! frame_pointer_needed) \
offset -= 16; \
if (! volatile_func \
- && (regs_ever_live[LR_REGNUM] || saved_hard_reg)) \
+ && (regs_ever_live[LR_REGNUM] /*|| saved_hard_reg */)) \
offset += 4; \
offset += current_function_outgoing_args_size; \
(OFFSET) = ROUND_UP (get_frame_size ()) + offset; \