add deprecated SIGIOT alias for SIGABRT
[musl] / arch / i386 / bits / signal.h
index 3caadea..75844e5 100644 (file)
@@ -1,14 +1,37 @@
 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
  || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 
+#ifdef _GNU_SOURCE
+#define REG_GS          0
+#define REG_FS          1
+#define REG_ES          2
+#define REG_DS          3
+#define REG_EDI         4
+#define REG_ESI         5
+#define REG_EBP         6
+#define REG_ESP         7
+#define REG_EBX         8
+#define REG_EDX         9
+#define REG_ECX         10
+#define REG_EAX         11
+#define REG_TRAPNO      12
+#define REG_ERR         13
+#define REG_EIP         14
+#define REG_CS          15
+#define REG_EFL         16
+#define REG_UESP        17
+#define REG_SS          18
+#endif
+
 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-struct _fpstate {
+typedef int greg_t, gregset_t[19];
+typedef struct _fpstate {
        unsigned long cw, sw, tag, ipoff, cssel, dataoff, datasel;
        struct {
                unsigned short significand[4], exponent;
        } _st[8];
        unsigned long status;
-};
+} *fpregset_t;
 struct sigcontext {
        unsigned short gs, __gsh, fs, __fsh, es, __esh, ds, __dsh;
        unsigned long edi, esi, ebp, esp, ebx, edx, ecx, eax;
@@ -20,8 +43,8 @@ struct sigcontext {
        unsigned long oldmask, cr2;
 };
 typedef struct {
-       unsigned gregs[19];
-       struct _fpstate *fpregs;
+       gregset_t gregs;
+       fpregset_t fpregs;
        unsigned long oldmask, cr2;
 } mcontext_t;
 #else
@@ -56,6 +79,7 @@ typedef struct __ucontext {
 #define SIGILL    4
 #define SIGTRAP   5
 #define SIGABRT   6
+#define SIGIOT    SIGABRT
 #define SIGBUS    7
 #define SIGFPE    8
 #define SIGKILL   9
@@ -85,3 +109,4 @@ typedef struct __ucontext {
 #define SIGUNUSED SIGSYS
 
 #define _NSIG 65
+