Fix for ia64-java bug reported by Hans Boehm.

* optabs.c (emit_libcall_block): When using non-call exceptions,
	don't add REG_LIBCALL reg notes to trapping calls.

From-SVN: r45934
This commit is contained in:
Hans Boehm 2001-10-02 02:01:55 +00:00 committed by Jim Wilson
parent 607a6500ea
commit 11e9ecc58c
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2001-10-01 Hans Boehm <boehm@acm.org>
* optabs.c (emit_libcall_block): When using non-call exceptions,
don't add REG_LIBCALL reg notes to trapping calls.
2001-10-01 David Billinghurst <David.Billinghurst@riotinto.com>
* flow.c (propagate_block_delete_libcall): Remove unused first arg

View File

@ -2957,9 +2957,13 @@ emit_libcall_block (insns, target, result, equiv)
first = NEXT_INSN (prev);
/* Encapsulate the block so it gets manipulated as a unit. */
REG_NOTES (first) = gen_rtx_INSN_LIST (REG_LIBCALL, last,
REG_NOTES (first));
REG_NOTES (last) = gen_rtx_INSN_LIST (REG_RETVAL, first, REG_NOTES (last));
if (!flag_non_call_exceptions || !may_trap_p (equiv))
{
REG_NOTES (first) = gen_rtx_INSN_LIST (REG_LIBCALL, last,
REG_NOTES (first));
REG_NOTES (last) = gen_rtx_INSN_LIST (REG_RETVAL, first,
REG_NOTES (last));
}
}
/* Generate code to store zero in X. */