[PATCH]: Fix PR rtl-optimization/29841: cfgbuild.c: control_flow_insn_p () .
Maxim Kuvyrkov
mkuvyrkov@ispras.ru
Tue Apr 17 10:02:00 GMT 2007
Eric Botcazou wrote:
...
> Index: cfgbuild.c
> ===================================================================
> --- cfgbuild.c (revision 123843)
> +++ cfgbuild.c (working copy)
> @@ -120,6 +120,11 @@ control_flow_insn_p (rtx insn)
> || can_throw_internal (insn));
>
> case INSN:
> + /* Treat trap instructions like noreturn calls (same provision). */
> + if (GET_CODE (PATTERN (insn)) == TRAP_IF
> + && XEXP (PATTERN (insn), 0) == const1_rtx)
> + return true;
> +
> return (flag_non_call_exceptions && can_throw_internal (insn));
>
> case BARRIER:
Did you consider fixing cfgrtl.c: rtl_verify_flow_info_1 () as well?
The workaround for a barrier inside a basic block should no longer be
needed with you patch.
--
Maxim
More information about the Gcc-patches
mailing list