Skip site navigation (1)Skip section navigation (2)
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>