diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2009-06-02 21:17:36 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2009-06-02 21:17:36 +0000 |
commit | 1964788a31dd359f363f5c0b7461c37f60737e84 (patch) | |
tree | 2d75369b1fc2c3e90332691af02be33b3161cb7c | |
parent | 8633c31574501e823ed7f28ed949c30e3b0b3430 (diff) | |
download | gcc-1964788a31dd359f363f5c0b7461c37f60737e84.zip gcc-1964788a31dd359f363f5c0b7461c37f60737e84.tar.gz gcc-1964788a31dd359f363f5c0b7461c37f60737e84.tar.bz2 |
sh.c: Revert last change.
* config/sh/sh.c: Revert last change.
(sh_expand_epilogue): Emit a blockage insn before the frame
pointer adjustment unconditionally.
From-SVN: r148103
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 7 |
2 files changed, 8 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 825c7b6..67e87e1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-06-02 Kaz Kojima <kkojima@gcc.gnu.org> + + * config/sh/sh.c: Revert last change. + (sh_expand_epilogue): Emit a blockage insn before the frame + pointer adjustment unconditionally. + 2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com> * config/pa/pa-hpux.h (LINK_SPEC): Remove "%<fwhole-program". diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 681488d..545ac04 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -43,7 +43,6 @@ along with GCC; see the file COPYING3. If not see #include "target.h" #include "target-def.h" #include "real.h" -#include "debug.h" #include "langhooks.h" #include "basic-block.h" #include "df.h" @@ -6747,11 +6746,9 @@ sh_expand_epilogue (bool sibcall_p) if (frame_pointer_needed) { - /* We must avoid scheduling the epilogue with previous basic blocks - when exception handling or frame information is needed. + /* We must avoid scheduling the epilogue with previous basic blocks. See PR/18032 and PR/40313. */ - if (flag_exceptions || dwarf2out_do_frame ()) - emit_insn (gen_blockage ()); + emit_insn (gen_blockage ()); output_stack_adjust (frame_size, hard_frame_pointer_rtx, e, &live_regs_mask); |