diff options
author | Russ Cox <rsc@swtch.com> | 2020-12-30 07:18:30 -0500 |
---|---|---|
committer | Russ Cox <rsc@swtch.com> | 2020-12-30 07:53:28 -0500 |
commit | 18571208068d5fe2f0bf7b4e980525a7f577c503 (patch) | |
tree | baf2061164df38258cc6127a102ab76d9089fb31 /src/libthread/power-ucontext.h | |
parent | e68f07d46f5f168dc2076286627279540bf1f99e (diff) | |
download | plan9port-18571208068d5fe2f0bf7b4e980525a7f577c503.tar.gz plan9port-18571208068d5fe2f0bf7b4e980525a7f577c503.tar.bz2 plan9port-18571208068d5fe2f0bf7b4e980525a7f577c503.zip |
libthread: simplify
Now that everything uses pthreads and pthreadperthread,
can delete various conditionals, all the custom context code,
and so on. Also update documents.
Fixes #355.
Diffstat (limited to 'src/libthread/power-ucontext.h')
-rw-r--r-- | src/libthread/power-ucontext.h | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/libthread/power-ucontext.h b/src/libthread/power-ucontext.h deleted file mode 100644 index 1985d98d..00000000 --- a/src/libthread/power-ucontext.h +++ /dev/null @@ -1,36 +0,0 @@ -#define setcontext(u) _setmcontext(&(u)->mc) -#define getcontext(u) _getmcontext(&(u)->mc) -typedef struct mcontext mcontext_t; -typedef struct ucontext ucontext_t; -struct mcontext -{ - ulong pc; /* lr */ - ulong cr; /* mfcr */ - ulong ctr; /* mfcr */ - ulong xer; /* mfcr */ - ulong sp; /* callee saved: r1 */ - ulong toc; /* callee saved: r2 */ - ulong r3; /* first arg to function, return register: r3 */ - ulong gpr[19]; /* callee saved: r13-r31 */ -/* -// XXX: currently do not save vector registers or floating-point state -// ulong pad; -// uvlong fpr[18]; / * callee saved: f14-f31 * / -// ulong vr[4*12]; / * callee saved: v20-v31, 256-bits each * / -*/ -}; - -struct ucontext -{ - struct { - void *ss_sp; - uint ss_size; - } uc_stack; - sigset_t uc_sigmask; - mcontext_t mc; -}; - -void makecontext(ucontext_t*, void(*)(void), int, ...); -int swapcontext(ucontext_t*, ucontext_t*); -int _getmcontext(mcontext_t*); -void _setmcontext(mcontext_t*); |