about summary refs log tree commit diff
path: root/math
diff options
context:
space:
mode:
Diffstat (limited to 'math')
-rw-r--r--math/e_scalb.c6
-rw-r--r--math/e_scalbf.c6
-rw-r--r--math/e_scalbl.c6
3 files changed, 3 insertions, 15 deletions
diff --git a/math/e_scalb.c b/math/e_scalb.c
index 7f61ce0455..692f105d7f 100644
--- a/math/e_scalb.c
+++ b/math/e_scalb.c
@@ -16,7 +16,6 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <fenv.h>
 #include <math.h>
 #include <math_private.h>
 
@@ -26,10 +25,7 @@ __attribute__ ((noinline))
 invalid_fn (double x, double fn)
 {
   if (__rint (fn) != fn)
-    {
-      __feraiseexcept (FE_INVALID);
-      return __nan ("");
-    }
+    return (fn - fn) / (fn - fn);
   else if (fn > 65000.0)
     return __scalbn (x, 65000);
   else
diff --git a/math/e_scalbf.c b/math/e_scalbf.c
index 7377f6e1e8..8df86f4bb8 100644
--- a/math/e_scalbf.c
+++ b/math/e_scalbf.c
@@ -16,7 +16,6 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <fenv.h>
 #include <math.h>
 #include <math_private.h>
 
@@ -26,10 +25,7 @@ __attribute__ ((noinline))
 invalid_fn (float x, float fn)
 {
   if (__rintf (fn) != fn)
-    {
-      feraiseexcept (FE_INVALID);
-      return __nan ("");
-    }
+    return (fn - fn) / (fn - fn);
   else if (fn > 65000.0f)
     return __scalbnf (x, 65000);
   else
diff --git a/math/e_scalbl.c b/math/e_scalbl.c
index 53e9ca22f1..02956ac9e6 100644
--- a/math/e_scalbl.c
+++ b/math/e_scalbl.c
@@ -16,7 +16,6 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <fenv.h>
 #include <math.h>
 #include <math_private.h>
 
@@ -26,10 +25,7 @@ __attribute__ ((noinline))
 invalid_fn (long double x, long double fn)
 {
   if (__rintl (fn) != fn)
-    {
-      feraiseexcept (FE_INVALID);
-      return __nan ("");
-    }
+    return (fn - fn) / (fn - fn);
   else if (fn > 65000.0L)
     return __scalbnl (x, 65000);
   else