[PATCH]: Fix PR rtl-optimization/29841: cfgbuild.c: control_flow_insn_p () .

Eric Botcazou ebotcazou@libertysurf.fr
Thu Apr 19 11:51:00 GMT 2007


> can_throw_internal () [as I understand it] is used to check for EH code
> which the trap looks to be not.  Hence I'm not sure why it should be
> handled as an EH insn.

The comment seems pretty clear: "then moving it changes where block boundaries 
fall.  This is mighty confusing elsewhere."

> Answering your question: "I don't know.  May be  EBB mode can live without
> it, nobody checked." 

OK, let's play safe and assume that it's still useful in EBB mode somehow.

> On the other hand the trap is certainly a control flow insn and - while
> for some reason parts of dependence handling code that are responsible
> for handling jumps were written outside of sched-deps.c - things should
> be kept in one place.

That's why I still think that sched_analyze_insn is the best place, as it 
works for both EBB and RGN mode.  I've added a comment trying to reflect
your position and installed the patch on both branches.

Thanks for your feedback.

-- 
Eric Botcazou



More information about the Gcc-patches mailing list