[LLVMdev] Making llvm.eh.actions work

Reid Kleckner rnk at google.com
Fri Mar 6 14:24:20 PST 2015

On Thu, Mar 5, 2015 at 5:55 PM, Kaylor, Andrew <andrew.kaylor at intel.com>

>  Having the number of arguments for each handler depend on the handler
> type feels a bit shaky to me, but I can’t think of an actually problem with
> it that wouldn’t be handled by checking the type of each argument as we
> process it.

We could definitely put in a dummy i8* null to make the number of arguments
per action match, but we still wouldn't be able to tell cleanups from
catches without using some sentinel other than i8* null. We really can use
any sentinel, since vararg functions don't have a prototype.

> There are a couple of other pieces of information that need to end up in
> the catch handler array in the .xdata section, but I don’t think they have
> any reason to be included here.
> So, yeah, I think this form for llvm.eh.actions is reasonable.  We can
> always replace it later if we come up with a cleaner idea.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150306/4852c9d7/attachment.html>

More information about the llvm-dev mailing list