summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-18 19:51:47 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-18 19:51:47 +0000
commit6571ac6e6dfb5f0953c9f7f7c55d448f609d099b (patch)
treedcab30f27c351d477449ab94aff6e8067c573cbf
parentb38bcc540149be54dca4bb75f8b066661df5c8d7 (diff)
downloadppe42-gcc-6571ac6e6dfb5f0953c9f7f7c55d448f609d099b.tar.gz
ppe42-gcc-6571ac6e6dfb5f0953c9f7f7c55d448f609d099b.zip
gcc/
* config/m68k/m68k.c (m68k_use_return_insn): Update comments before function. Extend register save check to include all registers, not just integer ones. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120927 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/m68k/m68k.c7
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bea01b05297..f7d4ef0aa56 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-01-18 Richard Sandiford <richard@codesourcery.com>
+
+ * config/m68k/m68k.c (m68k_use_return_insn): Update comments
+ before function. Extend register save check to include all
+ registers, not just integer ones.
+
2007-01-18 Kazu Hirata <kazu@codesourcery.com>
* config/m68k/m68k-protos.h (use_return_insn): Rename to...
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 1bfa6867cd5..a2f9f015c87 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -1019,7 +1019,8 @@ m68k_output_function_prologue (FILE *stream,
}
}
-/* Return true if this function's epilogue can be output as RTL. */
+/* Return true if a simple (return) instruction is sufficient for this
+ instruction (i.e. if no epilogue is needed). */
bool
m68k_use_return_insn (void)
@@ -1027,10 +1028,8 @@ m68k_use_return_insn (void)
if (!reload_completed || frame_pointer_needed || get_frame_size () != 0)
return false;
- /* We can output the epilogue as RTL only if no registers need to be
- restored. */
m68k_compute_frame_layout ();
- return current_frame.reg_no ? false : true;
+ return current_frame.offset == 0;
}
/* This function generates the assembly code for function exit,
OpenPOWER on IntegriCloud