diff options
author | Joseph Myers <joseph@codesourcery.com> | 2018-03-20 18:35:50 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2018-03-20 18:35:50 +0000 |
commit | d0c5d731af73fcd787fb398a34e2431bcb686bd3 (patch) | |
tree | 3e19a0f226e3ec5b37724265de75921bab3a96e9 /bits/ipc.h | |
parent | 8a07b0c43c46a480da070efd53a2720195e2256f (diff) | |
download | glibc-d0c5d731af73fcd787fb398a34e2431bcb686bd3.zip glibc-d0c5d731af73fcd787fb398a34e2431bcb686bd3.tar.gz glibc-d0c5d731af73fcd787fb398a34e2431bcb686bd3.tar.bz2 |
Remove powerpc, sparc fdim inlines (bug 22987).
The powerpc and sparc bits/mathinline.h include inlines of fdim and
fdimf. These are not restricted to -fno-math-errno, but do not set
errno, and wrongly use ordered <= comparisons instead of the required
islessequal comparisons (this latter issue is latent on powerpc
because GCC wrongly uses unordered comparison instructions for
operations that should use ordered comparison instructions).
Since we wish to avoid such header inlines anyway, leaving it to the
compiler to inline such standard functions under appropriate
conditions, this patch fixes those issues by removing the inlines in
question (and thus removing the sparc bits/mathinline.h header which
had no other inlines left in it). I've filed
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85003> for adding
correct fdim inlines to GCC, since the function is simple enough that
a correct inline is a perfectly reasonable architecture-independent
optimization with -fno-math-errno and in the absence of implicit
excess precision.
Tested with build-many-glibcs.py for all its powerpc and sparc
configurations.
[BZ #22987]
* sysdeps/powerpc/bits/mathinline.h (fdim): Remove inline
function.
(fdimf): Likewise.
* sysdeps/sparc/fpu/bits/mathinline.h: Remove file.
Diffstat (limited to 'bits/ipc.h')
0 files changed, 0 insertions, 0 deletions