Hi,

No additional changes in this version.
This V2 patch was regenerated on top of `cygwin/main` and applies cleanly 
as-is, without any additional dependencies.

Thanks,
Thirumalai Nagalingam

In-lined patch:

diff --git a/winsup/cygwin/scripts/gendef b/winsup/cygwin/scripts/gendef
index adb3ed217..b0e4d2a3e 100755
--- a/winsup/cygwin/scripts/gendef
+++ b/winsup/cygwin/scripts/gendef
@@ -611,7 +611,33 @@ sigsetjmp:
        .globl  setjmp
 setjmp:
        .globl  siglongjmp
+       .seh_proc siglongjmp
 siglongjmp:
+       // prologue
+       stp     fp, lr, [sp, #-0x10]!           // save FP and LR registers
+       mov     fp, sp                          // set FP to current SP
+       .seh_endprologue
+       mov x19, x1                             // save val
+       mov x20, x0                             // save buf
+       ldr     w8, [x20, #0x100]               // w8 = buf->savemask
+       cbz     w8, 1f                          // if savemask == 0, skip
+       sub     sp, sp, #32                     // allocate 32 bytes on stack
+       mov     x0, #0                          // SIG_SETMASK
+       mov     x1, xzr                         // newmask = NULL
+       add     x2, x20, #0x108                 // &buf->sigmask
+       bl      pthread_sigmask
+
+       add     sp, sp, #32                     // call frame
+1:
+       mov     x0, x20                         //buf
+       mov     x1, x19                         //val
+       bl longjmp
+
+       // epilogue
+       ldp     fp, lr, [sp], #0x10             // restore saved FP and LR 
registers
+       ret
+       .seh_endproc
+
        .globl  longjmp
 longjmp:
 EOF
--
2.52.0.windows.1



Attachment: 0005-Cygwin-gendef-Implement-siglongjmp-for-AArch64.patch
Description: 0005-Cygwin-gendef-Implement-siglongjmp-for-AArch64.patch

Reply via email to