[LLVMdev] RFC: Native Windows C++ exception handling

Kaylor, Andrew andrew.kaylor at intel.com
Thu Jan 29 12:16:22 PST 2015


> I'm not sure exactly how step 3.a works. Does it stem from step 4.b which assigns the same eh_state to two catch handlers? It seems like these rules would come into play in these examples:
>> Is that the idea?

Yes.  That’s the case I’m trying to handle with the 3a fixup.  In the final implementation I hope to come up with something cleaner (maybe looking ahead when the state is assigned in the first place), but the result will be the same.


> I guess we can do the EH state assignment in the preparation pass, so long as it's resilient to basic block reordering.

I think the EH state assignment (that is, the actual numbering) depends on control flow rather than physical block ordering, so I expect that the prepare pass will be the right place to do it.  Then, as you say, the IP to State table will be constructed later.

I guess we can work out the details while reviewing patches, but I’m happy to use some combination of intrinsics as you suggest.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150129/86dcc6ae/attachment.html>


More information about the llvm-dev mailing list