Reapply patch to fix SIGSEGV in case of unwind from signal handler (should be aarch64-safe)#31
Conversation
This reverts commit 02f17ec.
In case of this is frame of signal handler, the IP should be incremented, because the IP saved in the signal handler points to first non-executed instruction, while FDE/CIE expects IP to be after the first non-executed instruction. Refs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26208 Upstream commit: llvm/llvm-project@7b604cd
|
IIUC, llvm/llvm-project@7b604cd affects which FDE is selected, but doesn't affect which range within the FDE is selected. Like, there are two separate mechanisms for decrementing pc in non-top/non-signal frames: (1) the EDIT: Not quite: EDIT2: If I were to fix it, I'd do:
|
Changes