Index: fusl/src/math/floorf.c |
diff --git a/fusl/src/math/floorf.c b/fusl/src/math/floorf.c |
index dceec739dbef5c4039fd4a5c7cf5c95ac593777d..fd40863acb244e0d202bd4966bc1697fac593b70 100644 |
--- a/fusl/src/math/floorf.c |
+++ b/fusl/src/math/floorf.c |
@@ -1,27 +1,29 @@ |
#include "libm.h" |
-float floorf(float x) |
-{ |
- union {float f; uint32_t i;} u = {x}; |
- int e = (int)(u.i >> 23 & 0xff) - 0x7f; |
- uint32_t m; |
+float floorf(float x) { |
+ union { |
+ float f; |
+ uint32_t i; |
+ } u = {x}; |
+ int e = (int)(u.i >> 23 & 0xff) - 0x7f; |
+ uint32_t m; |
- if (e >= 23) |
- return x; |
- if (e >= 0) { |
- m = 0x007fffff >> e; |
- if ((u.i & m) == 0) |
- return x; |
- FORCE_EVAL(x + 0x1p120f); |
- if (u.i >> 31) |
- u.i += m; |
- u.i &= ~m; |
- } else { |
- FORCE_EVAL(x + 0x1p120f); |
- if (u.i >> 31 == 0) |
- u.i = 0; |
- else if (u.i << 1) |
- u.f = -1.0; |
- } |
- return u.f; |
+ if (e >= 23) |
+ return x; |
+ if (e >= 0) { |
+ m = 0x007fffff >> e; |
+ if ((u.i & m) == 0) |
+ return x; |
+ FORCE_EVAL(x + 0x1p120f); |
+ if (u.i >> 31) |
+ u.i += m; |
+ u.i &= ~m; |
+ } else { |
+ FORCE_EVAL(x + 0x1p120f); |
+ if (u.i >> 31 == 0) |
+ u.i = 0; |
+ else if (u.i << 1) |
+ u.f = -1.0; |
+ } |
+ return u.f; |
} |