On Mon, 19 Mar 2012, Steven Bosscher wrote:
> On Mon, Mar 19, 2012 at 4:41 PM, Richard Guenther <rguent...@suse.de> wrote:
> > Comments?
> What does rtl_eh do for no-SJLJ exceptions?
Emitting the landing pad code (copy-out from EH_RETURN_DATA_REGNO, or
target specific code) and redirecting edges to that one.
> (Can/should we move that code to GIMPLE?)
We could, but for the sjlj case it's some work to rework the whole
thing to gimple, and for bb-reorder we at least need the dwarf landing pad
expander also on RTL (meaning also the target expander for that). Not
much gain there, so IMO we shouldn't.
We could also do away with the separation of landing pad and post landing
pad (e.g. by a new _builtin_landing_pad_magic()), but that would get rid
of the RTL redirecting of edges only for the dwarf case, as the sjlj still
would rewrite the CFG by emitting explicit switch statements. Might be
slightly nicer nevertheless, but also not terribly important gain.