cvs commit: src/lib/libc/amd64/gen fabs.S modf.S

Bruce Evans bde at zeta.org.au
Thu May 1 10:26:29 PDT 2003


On Thu, 1 May 2003, David O'Brien wrote:

> On Thu, May 01, 2003 at 02:24:23AM +0300, Maxim Sobolev wrote:
> > Does this mean that it is theoretically possible to use those
> > and other similar functions on SSE2-capable ia32 processors, such
> > as p4, instead of x87 FPU ones?
>
> Probably.  You'll have to do a little /%r/%e/ action.

Not to mention changing the i386 calling convention.  But you wouldn't
want to use these and other similar functions on SSEn-capable ia32
processors, since they don't use SSEn except for using SSE1 registers
to pessimize the function call protocol a little for at least the
callee (the callee has to do extra work to move values from wrong
registers via the stack).  Perhaps other unsimilar functions get
more benefits from SSE.

BTW, is it really safe to use negative stack offsets for scratch
variables ?  Where is the signal stack?  fabs() and some other functions
use negative stack offsets, but modf() uses a normal frame pointer.

Bruce


More information about the cvs-src mailing list