Continuing the fixes for C90 libm functions calling C99 fe* functions,
this patch fixes the case of fesetround by making it a weak alias of
__fesetround and making the affected code call __fesetround. An
existing __fesetround function in fenv_libc.h for powerpc is renamed
to __fesetround_inline.
Tested for x86_64 (testsuite, and that disassembly of installed shared
libraries is unchanged by the patch). Also tested for ARM
(soft-float) that fesetround failures disappear from the linknamespace
test results (feupdateenv remains to be addressed to complete fixing
bug 17748).
[BZ #17748]
* include/fenv.h (__fesetround): Declare. Use libm_hidden_proto.
* math/fesetround.c (fesetround): Rename to __fesetround and
define as weak alias of __fesetround. Use libm_hidden_weak.
* sysdeps/aarch64/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/alpha/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/arm/fesetround.c (fesetround): Likewise.
* sysdeps/hppa/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/i386/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/ia64/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/m68k/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/mips/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/powerpc/fpu/fenv_libc.h (__fesetround): Rename to
__fesetround_inline.
* sysdeps/powerpc/fpu/fenv_private.h (libc_fesetround_ppc): Call
__fesetround_inline instead of __fesetround.
* sysdeps/powerpc/fpu/fesetround.c (fesetround): Rename to
__fesetround and define as weak alias of __fesetround. Use
libm_hidden_weak. Call __fesetround_inline instead of
__fesetround.
* sysdeps/powerpc/nofpu/fesetround.c (fesetround): Rename to
__fesetround and define as weak alias of __fesetround. Use
libm_hidden_weak.
* sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c (fesetround):
Likewise.
* sysdeps/s390/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/sh/sh4/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/sparc/fpu/fesetround.c (fesetround): Likewise.
* sysdeps/tile/math_private.h (__fesetround): New inline function.
* sysdeps/x86_64/fpu/fesetround.c (fesetround): Rename to
__fesetround and define as weak alias of __fesetround. Use
libm_hidden_weak.
* sysdeps/generic/math_private.h (default_libc_fesetround): Call
__fesetround instead of fesetround.
(default_libc_feholdexcept_setround): Likewise.
(libc_feholdsetround_ctx): Likewise.
(libc_feholdsetround_noex_ctx): Likewise.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
1997-04-17 16:55 Ulrich Drepper <drepper@cygnus.com>
* misc/libgen.h: Change prototype for of basename to XPG variant.
* stdlib/Makefile (routines): Add xpg_basename.
* stdlib/basename.c: New file.
* string/string.h: Don't declare basename function if basename
macro is available.
1997-04-16 17:33 Miles Bader <miles@gnu.ai.mit.edu>
* login/utmp_file.c (proc_utmp_eq): Only use ut_id field if valid.
1997-04-15 12:47 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/fclrexcpt.c: New file.
* sysdeps/m68k/fpu/fenvbits.h: New file.
* sysdeps/m68k/fpu/fegetenv.c: New file.
* sysdeps/m68k/fpu/fegetround.c: New file.
* sysdeps/m68k/fpu/fesetenv.c: New file.
* sysdeps/m68k/fpu/fesetround.c: New file.
* sysdeps/m68k/fpu/feupdateenv.c: New file.
* sysdeps/m68k/fpu/fgetexcptflg.c: New file.
* sysdeps/m68k/fpu/fraiseexcpt.c: New file.
* sysdeps/m68k/fpu/fsetexcptflg.c: New file.
* sysdeps/m68k/fpu/ftestexcept.c: New file.
* sysdeps/m68k/fpu/mathbits.h: New file.
* sysdeps/m68k/fpu/s_remquo.c: New file.
* sysdeps/m68k/fpu/s_remquol.c: New file.
* sysdeps/m68k/fpu/s_remquof.c: New file.
* sysdeps/libm-ieee754/s_roundl.c: Restore integer bit when
mantissa overflows into exponent. Fix priority of >> vs +.
* math/libm-test.c (basic_tests): Use the appropriate isnan and
isinf function to test the value of the nan function.
1997-04-15 13:40 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-i387/s_finite.S: Fix typo.
* sysdeps/i386/fpu/__math.h: Add optimized versions of isgreater,
isgreaterequal, isless, islessequal, islessgreater, and
isunordered.