summaryrefslogtreecommitdiffstats
path: root/sys/amd64/isa
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2001-07-26 23:47:04 +0000
committerpeter <peter@FreeBSD.org>2001-07-26 23:47:04 +0000
commit8106db863554ed6733f1f5ba088c35bca9ff7aa6 (patch)
treee3d4d37423997530d10ca7101b4984b2b1024115 /sys/amd64/isa
parentb9c905b586a534333271ddff0153f147a14d687c (diff)
downloadFreeBSD-src-8106db863554ed6733f1f5ba088c35bca9ff7aa6.zip
FreeBSD-src-8106db863554ed6733f1f5ba088c35bca9ff7aa6.tar.gz
MASK_FPU_SW didn't do what it was expected to do.
Diffstat (limited to 'sys/amd64/isa')
-rw-r--r--sys/amd64/isa/npx.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/sys/amd64/isa/npx.c b/sys/amd64/isa/npx.c
index 5e4847f..49b1b62 100644
--- a/sys/amd64/isa/npx.c
+++ b/sys/amd64/isa/npx.c
@@ -132,10 +132,6 @@ void stop_emulating __P((void));
(cpu_fxsr ? \
(proc)->p_addr->u_pcb.pcb_save.sv_xmm.sv_env.en_sw : \
(proc)->p_addr->u_pcb.pcb_save.sv_87.sv_env.en_sw)
-#define MASK_FPU_SW(proc, mask) \
- (cpu_fxsr ? \
- (proc)->p_addr->u_pcb.pcb_save.sv_xmm.sv_env.en_sw & (mask) : \
- (proc)->p_addr->u_pcb.pcb_save.sv_87.sv_env.en_sw & (mask))
#define GET_FPU_EXSW_PTR(pcb) \
(cpu_fxsr ? \
&(pcb)->pcb_save.sv_xmm.sv_ex_sw : \
@@ -145,8 +141,6 @@ void stop_emulating __P((void));
(proc->p_addr->u_pcb.pcb_save.sv_87.sv_env.en_cw)
#define GET_FPU_SW(proc) \
(proc->p_addr->u_pcb.pcb_save.sv_87.sv_env.en_sw)
-#define MASK_FPU_SW(proc, mask) \
- ((proc)->p_addr->u_pcb.pcb_save.sv_87.sv_env.en_sw & (mask))
#define GET_FPU_EXSW_PTR(pcb) \
(&(pcb)->pcb_save.sv_87.sv_ex_sw)
#endif /* CPU_ENABLE_SSE */
@@ -833,7 +827,7 @@ npxtrap()
exstat = GET_FPU_EXSW_PTR(&curproc->p_addr->u_pcb);
*exstat = status;
if (PCPU_GET(npxproc) != curproc)
- MASK_FPU_SW(curproc, ~0x80bf);
+ GET_FPU_SW(curproc) &= ~0x80bf;
else
fnclex();
critical_exit(savecrit);
OpenPOWER on IntegriCloud