Commit ffad84cd by Andrew Haley Committed by Andrew Haley

function.c (expand_function_end): Emit a blockage insn before the epilogue when…

function.c (expand_function_end): Emit a blockage insn before the epilogue when -fnon-call-exceptions is used.

2004-03-10  Andrew Haley  <aph@redhat.com>

	* function.c (expand_function_end): Emit a blockage insn before
	the epilogue when -fnon-call-exceptions is used.

	* except.c (expand_start_all_catch): Make comment more accurate.

From-SVN: r79265
parent 65cd26a6
2004-03-10 Andrew Haley <aph@redhat.com>
* function.c (expand_function_end): Emit a blockage insn before
the epilogue when -fnon-call-exceptions is used.
* except.c (expand_start_all_catch): Make comment more accurate.
2004-03-08 Joel Sherrill <joel@oarcorp.com>
PR target/14480
......
......@@ -602,10 +602,12 @@ expand_start_all_catch (void)
emit_jump (region->u.try.continue_label);
}
/* Begin a catch clause. TYPE is the type caught, a list of such types, or
null if this is a catch-all clause. Providing a type list enables to
associate the catch region with potentially several exception types, which
is useful e.g. for Ada. */
/* Begin a catch clause. TYPE is the type caught, a list of such
types, (in the case of Java) an ADDR_EXPR which points to the
runtime type to match, or null if this is a catch-all
clause. Providing a type list enables to associate the catch region
with potentially several exception types, which is useful e.g. for
Ada. */
void
expand_start_catch (tree type_or_list)
......
......@@ -7016,6 +7016,14 @@ expand_function_end (void)
clear_pending_stack_adjust ();
do_pending_stack_adjust ();
/* @@@ This is a kludge. We want to ensure that instructions that
may trap are not moved into the epilogue by scheduling, because
we don't always emit unwind information for the epilogue.
However, not all machine descriptions define a blockage insn, so
emit an ASM_INPUT to act as one. */
if (flag_non_call_exceptions)
emit_insn (gen_rtx_ASM_INPUT (VOIDmode, ""));
/* Mark the end of the function body.
If control reaches this insn, the function can drop through
without returning a value. */
......
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