Index: /branches/rme-fpe/lisp-kernel/platform-darwinx8632.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-darwinx8632.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-darwinx8632.h	(revision 13934)
@@ -54,5 +54,5 @@
 /* Note that this yields only the lower half of the MMX reg on x8632 */
 #define xpMMXreg(x,n) *(natural *)&(xpMMXvector(x)[n])
-
+#define xpMXCSR(x) (UC_MCONTEXT(x)->__fs.__fpu_mxcsr)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV /* Not really, but our Mach handler fakes that */
 #define IS_MAYBE_INT_TRAP(info,xp) ((UC_MCONTEXT(xp)->__es.__trapno == 0xd) && (((UC_MCONTEXT(xp)->__es.__err)&7)==2))
Index: /branches/rme-fpe/lisp-kernel/platform-darwinx8664.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-darwinx8664.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-darwinx8664.h	(revision 13934)
@@ -54,4 +54,5 @@
 /* Note that this yields only the lower half of the MMX reg on x8632 */
 #define xpMMXreg(x,n) *(natural *)&(xpMMXvector(x)[n])
+#define xpMXCSR(x) (UC_MCONTEXT(x)->__fs.__fpu_mxcsr)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV /* Not really, but our Mach handler fakes that */
 #define IS_MAYBE_INT_TRAP(info,xp) ((UC_MCONTEXT(xp)->__es.__trapno == 0xd) && (((UC_MCONTEXT(xp)->__es.__err)&7)==2))
Index: /branches/rme-fpe/lisp-kernel/platform-freebsdx8632.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-freebsdx8632.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-freebsdx8632.h	(revision 13934)
@@ -40,4 +40,5 @@
 #define xpMMXreg(x,n) *((natural *)(&(((struct ccl_savexmm *)(&(x)->uc_mcontext.mc_fpstate))->sv_fp[n])))
 #define xpXMMregs(x)(&(((struct ccl_savexmm *)(&(x)->uc_mcontext.mc_fpstate))->sv_xmm[0]))
+#define xpMXCSR(x) ((struct savefpu *)((x)->uc_mcontext.mc_fpstate)->sv_env.en_mxcsr)
 extern void freebsd_sigreturn(ExceptionInformation *);
 #define SIGNUM_FOR_INTN_TRAP SIGBUS
Index: /branches/rme-fpe/lisp-kernel/platform-freebsdx8664.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-freebsdx8664.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-freebsdx8664.h	(revision 13934)
@@ -39,4 +39,5 @@
 #define xpMMXreg(x,n) *((natural *)(&(((struct savefpu *)(&(x)->uc_mcontext.mc_fpstate))->sv_fp[n])))
 #define xpXMMregs(x)(&(((struct savefpu *)(&(x)->uc_mcontext.mc_fpstate))->sv_xmm[0]))
+#define xpMXCSR(x) ((struct savefpu *)((x)->uc_mcontext.mc_fpstate)->sv_env.en_mxcsr)
 extern void freebsd_sigreturn(ExceptionInformation *);
 #define SIGNUM_FOR_INTN_TRAP SIGBUS
Index: /branches/rme-fpe/lisp-kernel/platform-linuxx8632.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-linuxx8632.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-linuxx8632.h	(revision 13934)
@@ -38,4 +38,5 @@
 #define xpPC(x) (xpGPR(x,Iip))
 #define xpMMXreg(x,n)  *((natural *)(&((x)->uc_mcontext.fpregs->_st[n])))
+#define xpMXCSR(xp) ((xp)->uc_mcontext.fpregs->mxcsr)
 #define eflags_register(xp) xpGPR(xp,Iflags)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV
Index: /branches/rme-fpe/lisp-kernel/platform-linuxx8664.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-linuxx8664.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-linuxx8664.h	(revision 13934)
@@ -37,4 +37,5 @@
 #define xpPC(x) (xpGPR(x,Iip))
 #define xpMMXreg(x,n)  *((natural *)(&((x)->uc_mcontext.fpregs->_st[n])))
+#define xpMXCSR(xp) ((xp)->uc_mcontext.fpregs->mxcsr)
 #define eflags_register(xp) xpGPR(xp,Iflags)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV
Index: /branches/rme-fpe/lisp-kernel/platform-solarisx64.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-solarisx64.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-solarisx64.h	(revision 13934)
@@ -37,4 +37,5 @@
 #define eflags_register(xp) xpGPR(xp,Iflags)
 #define xpXMMregs(x)(&((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xmm[0]))
+#define xmMXCSR(x) ((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xstatus)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV
 #ifdef X8664
Index: /branches/rme-fpe/lisp-kernel/platform-solarisx86.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-solarisx86.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-solarisx86.h	(revision 13934)
@@ -38,4 +38,5 @@
 #define xpXMMregs(x)(&((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xmm[0]))
 #define xpMMXreg(x,n)*(natural *)(&(((struct fnsave_state *)(&(((x)->uc_mcontext.fpregs))))->f_st[n]))
+#define xmMXCSR(x) ((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xstatus)
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV
 #ifdef X8664
Index: /branches/rme-fpe/lisp-kernel/platform-win32.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-win32.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-win32.h	(revision 13934)
@@ -39,5 +39,6 @@
 #define xpFPRvector(x) ((natural *)(&(x->ExtendedRegisters[10*16])))
 #define xpMMXreg(x,n)  (*((u64_t *)(&(x->FloatSave.RegisterArea[10*(n)]))))
-#define xpMXCSRptr(x) (DWORD *)(&(x->ExtendedRegisters[24]))
+#define xpMXCSRptr(x) ((DWORD *)(&(x->ExtendedRegisters[24])))
+#define xpMXCSR(x) (*xpMXCSRptr(x))
 
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV /* Also fake */
Index: /branches/rme-fpe/lisp-kernel/platform-win64.h
===================================================================
--- /branches/rme-fpe/lisp-kernel/platform-win64.h	(revision 13933)
+++ /branches/rme-fpe/lisp-kernel/platform-win64.h	(revision 13934)
@@ -39,5 +39,5 @@
 #define eflags_register(xp) xp->EFlags
 #define xpMXCSRptr(x) (DWORD *)(&(x->MxCsr))
-
+#define xpMXCSR(x) ((x)->MxCsr)
 
 #define SIGNUM_FOR_INTN_TRAP SIGSEGV /* Also fake */
