i386 floating point asm in mathinline.h (gcc related)

Andreas Jaeger aj@suse.de
Tue Oct 19 09:45:00 GMT 1999


>>>>> Ulrich Drepper writes:

 Uli> Andreas Jaeger <aj@suse.de> writes:
>> Currently we use e.g.
>> __inline_mathop (log, "fldln2; fxch; fyl2x")
>> which expands to (I simplified a little bit):
>> 
>> inline double log (double __x)
>> {
>> register double __result;
>> __asm __volatile__ ("fldln2; fxch; fyl2x" : "=t" (__result) : "0" (__x))
>> return __result;
>> }

 Uli> This is not the latest version.  In the latest versio it is specified
 Uli> that st(1) is clobbered.

You're right - I missed one of your changes.  I guess it's time to
install a new glibc;-).

Ok, that problem seems to be solved now.
Andreas

P.S. Here's the ChangeLog entry and the current version:

1999-09-23  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/fpu/bits/mathinline.h (atan): Add st(1) to clobbers.
	(log): Likewise.
	(log10): Likewise.
	(log1p): Likewise.
	(log2): Likewise.

__inline_mathop_decl (log, "fldln2; fxch; fyl2x", "0" (__x) : "st(1)")


-- 
 Andreas Jaeger   
  SuSE Labs aj@suse.de	
   private aj@arthur.rhein-neckar.de


More information about the Libc-alpha mailing list