fabs: make friendly with non uint64_t
authorAlan Cox <alan@linux.intel.com>
Mon, 5 Mar 2018 20:27:07 +0000 (20:27 +0000)
committerAlan Cox <alan@linux.intel.com>
Mon, 5 Mar 2018 20:27:07 +0000 (20:27 +0000)
Library/libs/fabs.c

index 1859623..29819bb 100644 (file)
@@ -5,9 +5,10 @@
 
 double fabs(double x)
 {
-       union dshape u;
+       uint32_t hi;
 
-       u.value = x;
-       u.bits &= (uint64_t)-1 / 2;
-       return u.value;
+       GET_HIGH_WORD(x, hi);
+       hi &= 0x7FFFFFFFUL;
+       SET_HIGH_WORD(x, hi);
+       return x;
 }