Date: Thu, 20 Mar 2003 15:00:39 -0500 (EST) From: Andrew Gallatin <gallatin@cs.duke.edu> To: Jake Burkholder <jake@locore.ca> Cc: Peter Grehan <grehan@FreeBSD.org>, src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/powerpc/powerpc fpu.c genassym.c swtch.S trap.c Message-ID: <15994.7655.668902.294563@grasshopper.cs.duke.edu> In-Reply-To: <20030320144838.O76446@locore.ca> References: <200303201028.h2KASKU9090258@repoman.freebsd.org> <20030320110240.A3985@grasshopper.cs.duke.edu> <20030320144838.O76446@locore.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
Jake Burkholder writes: > Apparently, On Thu, Mar 20, 2003 at 11:02:40AM -0500, > Andrew Gallatin said words to the effect of; > > > Peter Grehan [grehan@FreeBSD.org] wrote: > > > grehan 2003/03/20 02:28:20 PST > > > > > > FreeBSD src repository > > > > > > Modified files: > > > sys/powerpc/powerpc fpu.c genassym.c swtch.S trap.c > > > Log: > > > Enable the FPU on first use per-thread and save state across context > > > switches. Not as lazy as it could be. Changing FPU state with sigcontext > > > still TODO. > > > > I think I agree w/you that lazy might not be the way to go. I'm still > > planning to see what the affect of non-lazy (proactive?) FPU state > > switching would be on the alpha port. > > By non-lazy do you mean restore the state immediately in cpu_switch? > Instead of allowing the process to return to userland with floating > point disabled and restoring on the first FP instruction? > Yes. At least on the alpha, gcc uses the floating point registers/instructions extensively. So even a process which isn't intentionally using floating point will likely take a FEN trap. Jason Thorpe did some nice analysis of this (which Peter G. pointed me at). http://mail-index.netbsd.org/port-alpha/2001/07/13/0003.html From what I can see, NetBSD still seems to be using lazy FP though. Drew To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15994.7655.668902.294563>