diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-15 09:23:43 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-15 09:23:43 +0000 |
commit | 34bddcb69587179ec138bf203d72033c80e59950 (patch) | |
tree | e38cbee4301e97b2c406eeb9f42a39c809c9b809 | |
parent | f9fd4d26da4a711d800079d6ca5163302712846b (diff) |
* 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/branches/csl/sourcerygxx-4_1@119879 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | ChangeLog.csl | 7 | ||||
-rw-r--r-- | gcc/config/m68k/m68k.c | 9 |
2 files changed, 11 insertions, 5 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index 14cc97c7e41..2b655652eff 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,6 +1,13 @@ 2006-12-15 Richard Sandiford <richard@codesourcery.com> 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. + +2006-12-15 Richard Sandiford <richard@codesourcery.com> + + gcc/ * config/m68k/m68k.md (adddi_dilshr32): Rename to... (*adddi_dilshr32): ...this. Fix formatting. Remove commented-out non-canonical pattern. Restrict to !m68k_arch_coldfire. diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c index 9dfc4e6dbaf..f3682fc087a 100644 --- a/gcc/config/m68k/m68k.c +++ b/gcc/config/m68k/m68k.c @@ -1115,7 +1115,8 @@ m68k_expand_prologue (void) } } -/* 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) @@ -1123,10 +1124,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; + m68k_compute_frame_layout (); + return current_frame.offset == 0; } /* Emit RTL for the "epilogue" define_expand. |