diff --git a/lib/libc_r/uthread/pthread_private.h b/lib/libc_r/uthread/pthread_private.h index 97b30b703092..4983a575fc27 100644 --- a/lib/libc_r/uthread/pthread_private.h +++ b/lib/libc_r/uthread/pthread_private.h @@ -77,12 +77,12 @@ #define SET_STACK_UC(ucp, stk) (ucp)->uc_mcontext.mc_esp = (int)(stk) #define FP_SAVE_UC(ucp) do { \ char *fdata; \ - fdata = (char *) (ucp)->uc_mcontext.mc_fpregs; \ + fdata = (char *) (ucp)->uc_mcontext.mc_fpstate; \ __asm__("fnsave %0": :"m"(*fdata)); \ } while (0) #define FP_RESTORE_UC(ucp) do { \ char *fdata; \ - fdata = (char *) (ucp)->uc_mcontext.mc_fpregs; \ + fdata = (char *) (ucp)->uc_mcontext.mc_fpstate; \ __asm__("frstor %0": :"m"(*fdata)); \ } while (0) #define SET_RETURN_ADDR_JB(jb, ra) (jb)[0]._jb[0] = (int)(ra) diff --git a/lib/libc_r/uthread/uthread_kern.c b/lib/libc_r/uthread/uthread_kern.c index 5c646c1423f1..b18f9440deb0 100644 --- a/lib/libc_r/uthread/uthread_kern.c +++ b/lib/libc_r/uthread/uthread_kern.c @@ -113,7 +113,7 @@ _thread_kern_sched(ucontext_t *ucp) /* Check if this function was called from the signal handler: */ if (ucp != NULL) { -#if 0 +#if 1 /* XXX - Save FP registers? */ FP_SAVE_UC(ucp); #endif @@ -158,7 +158,7 @@ _thread_kern_sched(ucontext_t *ucp) if (ucp == NULL) return; else { -#if 0 +#if 1 /* XXX - Restore FP registers? */ FP_RESTORE_UC(ucp); #endif