aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2001-01-08 14:32:53 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2001-01-08 14:32:53 +0000
commitc7861455c823513906045e3214f7f8d7f44e2276 (patch)
tree549d014c763a08ab5184d4496894bc9fb9de39bf /gcc
parent734dba19cd3a968ac15d17388665277bbd7746a1 (diff)
downloadgcc-c7861455c823513906045e3214f7f8d7f44e2276.zip
gcc-c7861455c823513906045e3214f7f8d7f44e2276.tar.gz
gcc-c7861455c823513906045e3214f7f8d7f44e2276.tar.bz2
arm.h (HARD_REGNO_RENAME_OK): Delete.
* 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. From-SVN: r38800
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/arm/arm.h15
2 files changed, 10 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 52bb93d..655af22 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+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
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index 43d3138..2701e24 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -1319,17 +1319,6 @@ enum reg_class
: \
((FROM) == HI_REGS || (TO) == HI_REGS) ? 4 : 2)
-/* 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])
-
-
/* Stack layout; function entry, exit and calling. */
/* Define this if pushing a word on the stack
@@ -1622,6 +1611,8 @@ typedef struct
#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) \
@@ -1712,7 +1703,7 @@ typedef struct
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; \