This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: Ping Re: Fix IBM long double spurious overflows


On Wed, 29 Jan 2014, Joseph S. Myers wrote:

> It is appropriate for glibc maintainers to seek consensus in the glibc 
> community on minimum requirements for glibc ports, just as on any other 
> question about what is or is not supported in glibc.  For example, it is 
> presently expected that a port uses ELF and supports TLS and PIC.  What 
> floating-point formats are supported is part of that.
> 
> I'll seek consensus in the glibc community on minimum standards for the 
> underlying floating-point arithmetic.

I have now made my proposal at 
<https://sourceware.org/ml/libc-alpha/2014-01/msg00582.html>.  This is 
similar to plenty of other proposals in glibc (such as those I made 
recently regarding principles for moving architectures from ports to libc, 
or regarding increasing the minimum Linux kernel version).

As the de facto maintainer for the soft-float powerpc support in glibc, I 
get to deal with these test failures when reviewing test results each 
release cycle, and they take a disproportionate amount of time, and my 
view is that fixing these issues in the __gcc_* functions, in copies local 
to glibc if necessary, is the best way to keep the ldbl-128ibm support in 
glibc maintainable.  (Although I'd certainly prefer to have suitable 
versions of the functions in libgcc, under different names and only 
enabled with options such as -frounding-math if necessary - although 
enabling correctness for exceptions with -frounding-math would seem rather 
odd.)

glibc used not to require TLS or atomic operations beyond test-and-set; 
the non-TLS support became unmaintainable, and now it does require TLS 
(which required kernel heleprs to be implemented on various architectures, 
and did make things slower for some architectures on some workloads).  It 
used not to require a 2.6 kernel when used with the Linux kernel; now it 
requires 2.6.16 and we're considering requiring 2.6.32.  I think of 
requirements on the floating point used by glibc functions in much the 
same way: evaluating a new requirement that would help in maintaining and 
developing glibc.

-- 
Joseph S. Myers
joseph@codesourcery.com


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