fix powerpc setjmp/longjmp to save/restore float regs; enlarge/align jmp_buf
[musl] / arch / x86_64 / bits / signal.h
index ecc4e9f..d1de2df 100644 (file)
@@ -1,5 +1,5 @@
 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 
 struct __fpstate {
        unsigned long __x[4];
@@ -31,7 +31,7 @@ typedef struct __ucontext {
 #define SA_RESETHAND  0x80000000
 #define SA_RESTORER   0x04000000
 
-#ifdef _GNU_SOURCE
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 struct sigcontext {
        unsigned long r8, r9, r10, r11, r12, r13, r14, r15;
        unsigned long rdi, rsi, rbp, rbx, rdx, rax, rcx, rsp, rip, eflags;
@@ -40,7 +40,6 @@ struct sigcontext {
        struct __fpstate *fpstate;
        unsigned long __reserved1[8];
 };
-#define NSIG      64
 #endif
 
 #endif
@@ -78,3 +77,5 @@ struct sigcontext {
 #define SIGPWR    30
 #define SIGSYS    31
 #define SIGUNUSED SIGSYS
+
+#define _NSIG 65