[LLVMdev] Platform-independent Exception Handling

Anthony Bryant antjbryant at gmail.com
Sat Feb 9 16:14:23 PST 2013


Greetings,

I'm trying to implement exception handling in my front end. I have a
prototype working using the Itanium ABI on Linux x86_64, but I'm not
sure how to proceed for other platforms.

So I was wondering: which OS/architecture combinations support
zero-cost EH, and which support SJLJ?

My main concern is keeping the IR for call sites platform independent.
Right now, it looks like to do that I might have to write my own
exception handling system (i.e. without invoke/landingpad) using just
setjmp(), longjmp(), and some thread local variables - which I have a
working prototype for, but it's quite inefficient. If LLVM's zero-cost
handling is viable for all platforms, I'd much rather use that.

Any help would be appreciated.

Thanks,
Anthony Bryant.



More information about the llvm-dev mailing list