This is the mail archive of the libc-alpha@sourceware.cygnus.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

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


>>>>> 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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]