diff options
Diffstat (limited to 'lib/libc_r/arch/sparc/uthread_machdep.h')
-rw-r--r-- | lib/libc_r/arch/sparc/uthread_machdep.h | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/lib/libc_r/arch/sparc/uthread_machdep.h b/lib/libc_r/arch/sparc/uthread_machdep.h index c922b49fd0c..46ffd6dc92c 100644 --- a/lib/libc_r/arch/sparc/uthread_machdep.h +++ b/lib/libc_r/arch/sparc/uthread_machdep.h @@ -1,7 +1,7 @@ /* * OpenBSD/sparc machine-dependent thread macros * - * $OpenBSD: uthread_machdep.h,v 1.2 1999/01/17 23:49:49 d Exp $ + * $OpenBSD: uthread_machdep.h,v 1.3 1999/11/25 07:01:29 d Exp $ */ #include <sys/signal.h> @@ -9,13 +9,13 @@ /* save the floating point state of a thread */ #define _thread_machdep_save_float_state(thr) \ { \ - /* XXX tdb */ \ + /* XXX tdb */ \ } /* restore the floating point state of a thread */ #define _thread_machdep_restore_float_state(thr) \ { \ - /* XXX tdb */ \ + /* XXX tdb */ \ } /* initialise the jmpbuf stack frame so it continues from entry */ @@ -25,19 +25,13 @@ /* entry */ \ (thr)->saved_jmp_buf[1] = (long) entry; \ /* stack */ \ - (thr)->saved_jmp_buf[0] = (long) (thr)->stack \ - + (pattr)->stacksize_attr \ + (thr)->saved_jmp_buf[0] = (long) (thr)->stack->base \ + + (thr)->stack->size \ - sizeof(double); \ } -/* - * XXX high chance of longjmp botch (see libc/arch/sparc/gen/_setjmp.S) - * because it uses the frame pointer to pop off frames.. we don't want - * that.. what to do? fudge %fp? do our own setjmp? - */ -#define _thread_machdep_longjmp(a,v) _longjmp(a,v) -#define _thread_machdep_setjmp(a) _setjmp(a) - +#define _thread_machdep_longjmp(a,v) _longjmp(a,v) +#define _thread_machdep_setjmp(a) _setjmp(a) typedef jmp_buf _machdep_jmp_buf; struct _machdep_struct { |