Remove some math_private.h libc_fe* overrides [committed]
Commit Message
math_private.h headers for configurations lacking support for
floating-point exceptions and rounding modes define various libc_fe*
macros to override the default versions with ones that discard any
exception or rounding mode arguments.
Three of the four macros defined in these headers are no longer needed
there: those macros are only used in fma implementations that are not
used for such configurations, now all those configurations properly
use soft-fp fma implementations instead. (Effectively, those macros
were a workaround to allow glibc to build in the absence of a proper
fma implementation for this case - now there is such an
implementation, there is no need to support building the wrong
implementation for those configurations.) Thus, this patch removes
the unnecessary macros.
Tested with build-many-glibcs.py that installed stripped shared
libraries are unchanged by the patch. Committed.
2018-02-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/m68k/coldfire/nofpu/math_private.h (libc_fesetround):
Remove macro.
(libc_fetestexcept): Likewise.
(libc_feupdateenv_test): Likewise.
* sysdeps/microblaze/math_private.h (libc_fesetround): Likewise.
(libc_fetestexcept): Likewise.
(libc_feupdateenv_test): Likewise.
* sysdeps/nios2/math_private.h (libc_fesetround): Likewise.
(libc_fetestexcept): Likewise.
(libc_feupdateenv_test): Likewise.
* sysdeps/tile/math_private.h (libc_fesetround): Likewise.
(libc_fetestexcept): Likewise.
(libc_feupdateenv_test): Likewise.
@@ -32,10 +32,7 @@
The overrides for libc_ functions must happen before we include
the generic math_private.h. */
-#define libc_fesetround(rnd) ({ 0; })
-#define libc_fetestexcept(exc) ({ 0; })
#define libc_feholdexcept_setround(env, exc) ({ (void) (env); 0; })
-#define libc_feupdateenv_test(env, exc) ({ (void) (env); 0; })
/* Enable __finitel, __isinfl, and __isnanl for binary compatibility
when built without long double support. */
@@ -19,10 +19,7 @@
The overrides for libc_ functions must happen before we include
the generic math_private.h. */
-#define libc_fesetround(rnd) ({ 0; })
-#define libc_fetestexcept(exc) ({ 0; })
#define libc_feholdexcept_setround(env, exc) ({ (void) (env); 0; })
-#define libc_feupdateenv_test(env, exc) ({ (void) (env); 0; })
/* Enable __finitel, __isinfl, and __isnanl for binary compatibility
when built without long double support. */
@@ -18,10 +18,7 @@
The overrides for libc_ functions must happen before we include
the generic math_private.h. */
-#define libc_fesetround(rnd) ({ 0; })
-#define libc_fetestexcept(exc) ({ 0; })
#define libc_feholdexcept_setround(env, exc) ({ (void) (env); 0; })
-#define libc_feupdateenv_test(env, exc) ({ (void) (env); 0; })
/* Enable __finitel, __isinfl, and __isnanl for binary compatibility
when built without long double support. */
@@ -17,10 +17,7 @@
The overrides for libc_ functions must happen before we include
the generic math_private.h. */
-#define libc_fesetround(rnd) ({ 0; })
-#define libc_fetestexcept(exc) ({ 0; })
#define libc_feholdexcept_setround(env, exc) ({ (void) (env); 0; })
-#define libc_feupdateenv_test(env, exc) ({ (void) (env); 0; })
#include_next <math_private.h>