From 8dba5486288e719ed290cccefcd932ed32756d7c Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Wed, 4 Sep 2013 17:36:00 +0000 Subject: math: cosmetic cleanup (use explicit union instead of fshape and dshape) --- src/math/copysign.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'src/math/copysign.c') diff --git a/src/math/copysign.c b/src/math/copysign.c index 038b8b4c..b09331b6 100644 --- a/src/math/copysign.c +++ b/src/math/copysign.c @@ -1,11 +1,8 @@ #include "libm.h" double copysign(double x, double y) { - union dshape ux, uy; - - ux.value = x; - uy.value = y; - ux.bits &= (uint64_t)-1>>1; - ux.bits |= uy.bits & (uint64_t)1<<63; - return ux.value; + union {double f; uint64_t i;} ux={x}, uy={y}; + ux.i &= -1ULL/2; + ux.i |= uy.i & 1ULL<<63; + return ux.f; } -- cgit 1.4.1