This is the mail archive of the libc-alpha@sourceware.org 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]
Other format: [Raw text]

Re: [PATCH] Use fabs(f/l) rather than __fabs


Joseph Myers wrote:

> I think you need to add -fno-builtin-fabsl for e_lgammal_r.c, e_log10l.c 
> and e_log2l.c in sysdeps/powerpc/nofpu/Makefile, for the same reason as 
> the existing -fno-builtin-fabsl uses there - the built-in fabsl does not 
> work properly for signed zero for powerpc soft-float / e500v1 (and the 
> uses of __fabsl being changed are all uses that need to work correctly for 
> signed zero).

Done, I verified that glibcs-powerpc-linux-gnu-soft now builds those files with
-fno-builtin-fabsl and that it passes.

> To be clear, the reason the change is safe regarding namespace issues is 
> that the particular functions in question don't get called from C90 
> functions in the case where fabsl might not be inlined (which is only the 
> powerpc soft-float / e500v1 case where -fno-builtin-fabsl is needed); the 
> existence of fabsl calls from other functions is not sufficient.  There is 
> code to call ldbl-128ibm expl from pow, but that's not one of the affected 
> functions and that code doesn't apply for soft-float / e500v1 anyway.  
> (fabsl is in fact a reserved name in C90, but the linknamespace tests 
> don't know that.)

Right so there are no namespace issues. But what about localplt issues
due to the disabling of fabsl inlining? I can't find any renaming, so why are
there no local plt failures on ppc soft-float?

Wilco
     

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