search for: saved_exception_ptr

Displaying 4 results from an estimated 4 matches for "saved_exception_ptr".

2010 Dec 02
5
[LLVMdev] Alternative exception handling proposal
..., a terminator like 'invoke' but with no successors and with the special replaced-with-a-branch behavior when inlined through an invoke. So the front-end could call whatever function it pleases, taking responsibility for passing in the right information. That is, instead of: rewind i8* %saved_exception_ptr you'd have: rewind void @_Unwind_Resume(i8* %saved_exception_ptr) or: rewind void @_cxa_end_cleanup() or, for targets that want special code sequences for resuming, something like: rewind void @llvm.crazytarget.end_cleanup() This also handily eliminates the problem of EHPrepare having to...
2010 Dec 02
0
[LLVMdev] Alternative exception handling proposal
Two amendments: > The semantics of the invoke instruction are slightly modified: if an exception > unwinds and it doesn't match anything in the list of catches and filters, > and there is no cleanup, then control doesn't branch to the unwind label, > unwinding simply continues out of the function. in fact the new semantics would be that if an exception doesn't match then
2010 Dec 02
0
[LLVMdev] Alternative exception handling proposal
...e' but with no successors and with the special > replaced-with-a-branch behavior when inlined through an invoke. So the front-end > could call whatever function it pleases, taking responsibility for passing in the right > information. > > That is, instead of: > rewind i8* %saved_exception_ptr > you'd have: > rewind void @_Unwind_Resume(i8* %saved_exception_ptr) > or: > rewind void @_cxa_end_cleanup() > or, for targets that want special code sequences for resuming, something like: > rewind void @llvm.crazytarget.end_cleanup() > > This also handily eli...
2010 Dec 01
8
[LLVMdev] Alternative exception handling proposal
Here is an alternative proposal to Bill's. It is closer to what we already have (which can be seen as a good or a bad thing!), and is also closer to what gcc does. It is more incremental than Bill's and introduces fewer new concepts. Executive summary ----------------- Remove the personality and list of catches out of eh.selector and stick them directly on invoke instructions. The