Commit 6c5bfec0 by Kaz Kojima Committed by Oleg Endo

PR/target 52642

	PR/target 52642
	* config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of
	prologue for unwinder and profiler.

From-SVN: r185616
parent a26f86dc
2012-03-21 Kaz Kojima <kkojima@gcc.gnu.org>
PR/target 52642
* config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of
prologue for unwinder and profiler.
2012-03-21 Andreas Tobler <andreast@fgznet.ch> 2012-03-21 Andreas Tobler <andreast@fgznet.ch>
* configure.ac (HAVE_LD_NO_DOT_SYMBOLS): Add powerpc64-*-freebsd*. * configure.ac (HAVE_LD_NO_DOT_SYMBOLS): Add powerpc64-*-freebsd*.
......
...@@ -7239,6 +7239,13 @@ sh_expand_prologue (void) ...@@ -7239,6 +7239,13 @@ sh_expand_prologue (void)
emit_insn (gen_shcompact_incoming_args ()); emit_insn (gen_shcompact_incoming_args ());
} }
/* If we are profiling, make sure no instructions are scheduled before
the call to mcount. Similarly if some call instructions are swapped
before frame related insns, it'll confuse the unwinder because
currently SH has no unwind info for function epilogues. */
if (crtl->profile || flag_exceptions || flag_unwind_tables)
emit_insn (gen_blockage ());
if (flag_stack_usage_info) if (flag_stack_usage_info)
current_function_static_stack_size = stack_usage; current_function_static_stack_size = stack_usage;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment