core: fix `coro_unwcontext` invalid unwind info
During the context switch required for backtracing a suspended fiber, unwinders go crazy, as the unwind information they had gets implicitly invalidated: provide an annotation for a dummy frame for `coro_unwcontext`, as if it were at the bottom of the call-chain — that way unwinders can normally proceed further. We need to know the exact location of the stack pointer: replace the 16-byte stack alignment instruction on x86_64 macOS by adding the `force_align_arg_pointer` attribute to `unw_getcontext_f`. Needed for #4002 NO_DOC=bug fix NO_CHANGELOG=bug fix NO_TEST=unwind information annotation in inline assembly
Loading
Please register or sign in to comment