search for: _cxa_end_cleanup

Displaying 6 results from an estimated 6 matches for "_cxa_end_cleanup".

2010 Dec 02
0
[LLVMdev] Alternative exception handling proposal
...n passed as the >> argument to _Unwind_Resume, In fact codegen already does this! > > I'm unhappy about how this bakes _Unwind_Resume into the backend, particularly > since that prevents us from using better alternatives when they're available > (e.g. the ARM EH ABI's _cxa_end_cleanup(), which saves code size by not requiring > the exception pointer, but which we can only use if we're linking in the C++ standard > library). the code generators can lower "unwind" to a call to _cxa_end_cleanup on that platform. > One idea that comes to mind is that we coul...
2010 Dec 02
5
[LLVMdev] Alternative exception handling proposal
...exception, which is then passed as the > argument to _Unwind_Resume, In fact codegen already does this! I'm unhappy about how this bakes _Unwind_Resume into the backend, particularly since that prevents us from using better alternatives when they're available (e.g. the ARM EH ABI's _cxa_end_cleanup(), which saves code size by not requiring the exception pointer, but which we can only use if we're linking in the C++ standard library). One idea that comes to mind is that we could make Yet Another call-like instruction, a terminator like 'invoke' but with no successors and with the...
2010 Dec 02
2
[LLVMdev] Alternative exception handling proposal
On Dec 2, 2010, at 4:45 AM, Duncan Sands wrote: >> I'm unhappy about how this bakes _Unwind_Resume into the backend, particularly >> since that prevents us from using better alternatives when they're available >> (e.g. the ARM EH ABI's _cxa_end_cleanup(), which saves code size by not requiring >> the exception pointer, but which we can only use if we're linking in the C++ standard >> library). > > the code generators can lower "unwind" to a call to _cxa_end_cleanup on that > platform. No, they can't, it...
2010 Dec 02
0
[LLVMdev] Alternative exception handling proposal
Hi John, >>> I'm unhappy about how this bakes _Unwind_Resume into the backend, particularly >>> since that prevents us from using better alternatives when they're available >>> (e.g. the ARM EH ABI's _cxa_end_cleanup(), which saves code size by not requiring >>> the exception pointer, but which we can only use if we're linking in the C++ >>> standard >>> library). >> >> the code generators can lower "unwind" to a call to _cxa_end_cleanup on that >> plat...
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 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