* config/sh/sh.c: Include debug.h.
(sh_expand_epilogue): Emit a blockage insn before the frame
pointer adjustment also when dwarf2out_do_frame returns true.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148017
138bc75d-0d04-0410-961f-
82ee72b054a4
+2009-05-31 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/40313
+ * config/sh/sh.c: Include debug.h.
+ (sh_expand_epilogue): Emit a blockage insn before the frame
+ pointer adjustment also when dwarf2out_do_frame returns true.
+
2009-05-31 Richard Earnshaw <rearnsha@arm.com>
* arm/thumb2.md (thumb2_extendsidi2): Add a split sub-pattern.
2009-05-31 Richard Earnshaw <rearnsha@arm.com>
* arm/thumb2.md (thumb2_extendsidi2): Add a split sub-pattern.
#include "target.h"
#include "target-def.h"
#include "real.h"
#include "target.h"
#include "target-def.h"
#include "real.h"
#include "langhooks.h"
#include "basic-block.h"
#include "df.h"
#include "langhooks.h"
#include "basic-block.h"
#include "df.h"
if (frame_pointer_needed)
{
/* We must avoid scheduling the epilogue with previous basic blocks
if (frame_pointer_needed)
{
/* We must avoid scheduling the epilogue with previous basic blocks
- when exception handling is enabled. See PR/18032. */
- if (flag_exceptions)
+ when exception handling or frame information is needed.
+ See PR/18032 and PR/40313. */
+ if (flag_exceptions || dwarf2out_do_frame ())
emit_insn (gen_blockage ());
output_stack_adjust (frame_size, hard_frame_pointer_rtx, e,
&live_regs_mask);
emit_insn (gen_blockage ());
output_stack_adjust (frame_size, hard_frame_pointer_rtx, e,
&live_regs_mask);