Closed GammaPi closed 2 years ago
Implemented in 9b2522d54e8896cd91e9821c4258b5c8e73dbb38 to 93329844a04cb15f56ebe0cf7dd4f2d00ce7ea7a.
For setjmp and longjump, we can solve by simply saving the caller address.
For exception, we need to create proxy personality functions.
It's not that complicated to handle this. We can simply verify whether the stack unwind happened during posthook. If true, we need to also rewind the return stack so that the return address is corrected.
This solution borrows the idea of #63
Let's call this stack unwinding detection.
Closing. Implemented in v0.2.1.