diff options
Diffstat (limited to '05/musl-0.6.0/include/ucontext.h')
-rw-r--r-- | 05/musl-0.6.0/include/ucontext.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/05/musl-0.6.0/include/ucontext.h b/05/musl-0.6.0/include/ucontext.h new file mode 100644 index 0000000..96c27cb --- /dev/null +++ b/05/musl-0.6.0/include/ucontext.h @@ -0,0 +1,38 @@ +#ifndef _UCONTEXT_H +#define _UCONTEXT_H +#ifdef __cplusplus +extern "C" { +#endif + +#include <signal.h> + +struct __fpstate { + unsigned long __x[7]; + unsigned char __y[80]; + unsigned long __z; +}; + +typedef struct { + unsigned long __gregs[19]; + void *__fpregs; + unsigned long __oldmask, __cr2; +} mcontext_t; + +typedef struct ucontext { + unsigned long uc_flags; + struct ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; + struct __fpstate __fpregs_mem; +} ucontext_t; + +int getcontext(ucontext_t *); +void makecontext(ucontext_t *, void (*)(void), int, ...); +int setcontext(const ucontext_t *); +int swapcontext(ucontext_t *, const ucontext_t *); + +#ifdef __cplusplus +} +#endif +#endif |