Blame


1 26eba9db 2006-06-04 devnull #define setcontext(u) _setmcontext(&(u)->mc)
2 26eba9db 2006-06-04 devnull #define getcontext(u) _getmcontext(&(u)->mc)
3 26eba9db 2006-06-04 devnull typedef struct mcontext mcontext_t;
4 26eba9db 2006-06-04 devnull typedef struct ucontext ucontext_t;
5 26eba9db 2006-06-04 devnull struct mcontext
6 26eba9db 2006-06-04 devnull {
7 26eba9db 2006-06-04 devnull int r[16];
8 26eba9db 2006-06-04 devnull };
9 26eba9db 2006-06-04 devnull
10 26eba9db 2006-06-04 devnull struct ucontext
11 26eba9db 2006-06-04 devnull {
12 26eba9db 2006-06-04 devnull struct {
13 26eba9db 2006-06-04 devnull void *ss_sp;
14 26eba9db 2006-06-04 devnull uint ss_size;
15 26eba9db 2006-06-04 devnull } uc_stack;
16 26eba9db 2006-06-04 devnull sigset_t uc_sigmask;
17 26eba9db 2006-06-04 devnull mcontext_t mc;
18 26eba9db 2006-06-04 devnull };
19 26eba9db 2006-06-04 devnull
20 26eba9db 2006-06-04 devnull void makecontext(ucontext_t*, void(*)(void), int, ...);
21 26eba9db 2006-06-04 devnull int swapcontext(ucontext_t*, ucontext_t*);
22 26eba9db 2006-06-04 devnull int _getmcontext(mcontext_t*);
23 26eba9db 2006-06-04 devnull void _setmcontext(mcontext_t*);
24 26eba9db 2006-06-04 devnull