If RTL checking is enabled, make sure that emit_insn is not used to emit a

jump insn.

From-SVN: r31420
This commit is contained in:
Nick Clifton 2000-01-14 20:51:04 +00:00 committed by Nick Clifton
parent 711d877c9e
commit 06be917325
3 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2000-01-14 Nick Clifton <nickc@cygnus.com>
* emit-rtl.c (emit_insn): If checking is enabled, make sure
that this function has not been used to emit a jump
instruction.
* jump.c (return_jump_1): Cope with being passed a null rtx.
2000-01-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* eh-common.h: PROTO -> PARAMS.

View File

@ -2948,6 +2948,17 @@ emit_insn (pattern)
add_insn (insn);
}
#ifdef ENABLE_RTL_CHECKING
if (insn
&& (returnjump_p (insn)
|| (GET_CODE (insn) == SET
&& SET_DEST (insn) == pc_rtx)))
{
warning ("ICE: emit_insn used where emit_jump_insn needed:\n");
debug_rtx (insn);
}
#endif
return insn;
}

View File

@ -3757,7 +3757,7 @@ returnjump_p_1 (loc, data)
void *data ATTRIBUTE_UNUSED;
{
rtx x = *loc;
return GET_CODE (x) == RETURN;
return x && GET_CODE (x) == RETURN;
}
int