mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-10 16:07:22 +08:00
optabs.c (emit_no_conflict_block, [...]): Avoid nesting of libcall regions.
* optabs.c (emit_no_conflict_block, emit_libcall_block): Avoid nesting of libcall regions. From-SVN: r51477
This commit is contained in:
parent
e27a4eaf4f
commit
218aa620c4
@ -1,3 +1,8 @@
|
||||
Wed Mar 27 23:11:35 CET 2002 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* optabs.c (emit_no_conflict_block, emit_libcall_block): Avoid nesting
|
||||
of libcall regions.
|
||||
|
||||
Wed Mar 27 22:54:14 CET 2002 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
|
||||
|
||||
* cfgrtl.c (merge_blocks_nomove): Use set_block_for_insn instead of
|
||||
|
17
gcc/optabs.c
17
gcc/optabs.c
@ -2739,11 +2739,18 @@ emit_no_conflict_block (insns, target, op0, op1, equiv)
|
||||
these from the list. */
|
||||
for (insn = insns; insn; insn = next)
|
||||
{
|
||||
rtx set = 0;
|
||||
rtx set = 0, note;
|
||||
int i;
|
||||
|
||||
next = NEXT_INSN (insn);
|
||||
|
||||
/* Some ports (cris) create an libcall regions at their own. We must
|
||||
avoid any potential nesting of LIBCALLs. */
|
||||
if ((note = find_reg_note (insn, REG_LIBCALL, NULL)) != NULL)
|
||||
remove_note (insn, note);
|
||||
if ((note = find_reg_note (insn, REG_RETVAL, NULL)) != NULL)
|
||||
remove_note (insn, note);
|
||||
|
||||
if (GET_CODE (PATTERN (insn)) == SET || GET_CODE (PATTERN (insn)) == USE
|
||||
|| GET_CODE (PATTERN (insn)) == CLOBBER)
|
||||
set = PATTERN (insn);
|
||||
@ -2906,6 +2913,14 @@ emit_libcall_block (insns, target, result, equiv)
|
||||
for (insn = insns; insn; insn = next)
|
||||
{
|
||||
rtx set = single_set (insn);
|
||||
rtx note;
|
||||
|
||||
/* Some ports (cris) create an libcall regions at their own. We must
|
||||
avoid any potential nesting of LIBCALLs. */
|
||||
if ((note = find_reg_note (insn, REG_LIBCALL, NULL)) != NULL)
|
||||
remove_note (insn, note);
|
||||
if ((note = find_reg_note (insn, REG_RETVAL, NULL)) != NULL)
|
||||
remove_note (insn, note);
|
||||
|
||||
next = NEXT_INSN (insn);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user