Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libm/mathfp/s_frexp.c')
-rw-r--r--newlib/libm/mathfp/s_frexp.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/newlib/libm/mathfp/s_frexp.c b/newlib/libm/mathfp/s_frexp.c
index 54fa336c8..08611e9a7 100644
--- a/newlib/libm/mathfp/s_frexp.c
+++ b/newlib/libm/mathfp/s_frexp.c
@@ -82,17 +82,6 @@ double frexp (double d, int *exp)
double f;
__uint32_t hd, ld, hf, lf;
- /* Check for special values. */
- switch (numtest (d))
- {
- case NAN:
- case INF:
- errno = EDOM;
- case 0:
- *exp = 0;
- return (d);
- }
-
EXTRACT_WORDS (hd, ld, d);
/* Get the exponent. */
@@ -105,6 +94,16 @@ double frexp (double d, int *exp)
INSERT_WORDS (f, hf, lf);
+ /* Check for special values. */
+ switch (numtest (f))
+ {
+ case NAN:
+ case INF:
+ errno = EDOM;
+ *exp = 0;
+ return (f);
+ }
+
return (f);
}