* cfgbuild.c (control_flow_insn_p): Notice noreturn call
From-SVN: r82321
This commit is contained in:
parent
63645982e7
commit
baf8706c69
@ -1,3 +1,7 @@
|
||||
2004-05-27 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* cfgbuild.c (control_flow_insn_p): Notice noreturn call
|
||||
|
||||
2004-05-25 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* combine.c (gen_binary): Remove.
|
||||
|
@ -108,6 +108,12 @@ control_flow_insn_p (rtx insn)
|
||||
&& GET_CODE (PATTERN (insn)) != ADDR_DIFF_VEC);
|
||||
|
||||
case CALL_INSN:
|
||||
/* Noreturn and sibling call instructions terminate the basic blocks
|
||||
(but only if they happen unconditionally). */
|
||||
if ((SIBLING_CALL_P (insn)
|
||||
|| find_reg_note (insn, REG_NORETURN, 0))
|
||||
&& GET_CODE (PATTERN (insn)) != COND_EXEC)
|
||||
return true;
|
||||
/* Call insn may return to the nonlocal goto handler. */
|
||||
return ((nonlocal_goto_handler_labels
|
||||
&& (0 == (note = find_reg_note (insn, REG_EH_REGION,
|
||||
|
Loading…
Reference in New Issue
Block a user