diff options
author | kib <kib@FreeBSD.org> | 2010-06-15 18:16:04 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2010-06-15 18:16:04 +0000 |
commit | 8e31ba530cbe76cf7541b0963ec638d546b4e334 (patch) | |
tree | b698079c800273e8757cea59865c6e55446595a4 /sys/amd64/ia32 | |
parent | 67f7af35eee38900875b3eb8ac1f9ce7eabc8fa7 (diff) | |
download | FreeBSD-src-8e31ba530cbe76cf7541b0963ec638d546b4e334.zip FreeBSD-src-8e31ba530cbe76cf7541b0963ec638d546b4e334.tar.gz |
Remove two obsoleted comments, add a note about 32bit compatibility.
MFC after: 1 month
Diffstat (limited to 'sys/amd64/ia32')
-rw-r--r-- | sys/amd64/ia32/ia32_signal.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/amd64/ia32/ia32_signal.c b/sys/amd64/ia32/ia32_signal.c index 859b9923..cf1042c 100644 --- a/sys/amd64/ia32/ia32_signal.c +++ b/sys/amd64/ia32/ia32_signal.c @@ -92,6 +92,12 @@ static void ia32_get_fpcontext(struct thread *td, struct ia32_mcontext *mcp) { + /* + * XXX Format of 64bit and 32bit FXSAVE areas differs. FXSAVE + * in 32bit mode saves %cs and %ds, while on 64bit it saves + * 64bit instruction and data pointers. Ignore the difference + * for now, it should be irrelevant for most applications. + */ mcp->mc_ownedfp = fpugetregs(td, (struct savefpu *)&mcp->mc_fpstate); mcp->mc_fpformat = fpuformat(); } @@ -109,10 +115,6 @@ ia32_set_fpcontext(struct thread *td, const struct ia32_mcontext *mcp) fpstate_drop(td); else if (mcp->mc_ownedfp == _MC_FPOWNED_FPU || mcp->mc_ownedfp == _MC_FPOWNED_PCB) { - /* - * XXX we violate the dubious requirement that fpusetregs() - * be called with interrupts disabled. - */ fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); } else return (EINVAL); |