Commit bd55b817 by Kaz Kojima

sh.c (find_barrier): Skip call insn with a REG_EH_REGION note when flag_exceptions is set.

	* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
	note when flag_exceptions is set.

From-SVN: r156656
parent 2ab43a52
2010-02-10 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
note when flag_exceptions is set.
2010-02-10 Duncan Sands <baldrick@free.fr>
* Makefile.in (PLUGIN_HEADERS): Add debug.h.
......
......@@ -4654,6 +4654,13 @@ find_barrier (int num_mova, rtx mova, rtx from)
if (last_got)
from = PREV_INSN (last_got);
/* Don't insert the constant pool table at the position which
may be the landing pad. */
if (flag_exceptions
&& CALL_P (from)
&& find_reg_note (from, REG_EH_REGION, NULL_RTX))
from = PREV_INSN (from);
/* Walk back to be just before any jump or label.
Putting it before a label reduces the number of times the branch
around the constant pool table will be hit. Putting it before
......
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