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