1#include "libm.h" 2 3#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024 4long double copysignl(long double x, long double y) 5{ 6 return copysign(x, y); 7} 8#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384 9long double copysignl(long double x, long double y) 10{ 11 union ldshape ux = {x}, uy = {y}; 12 ux.i.se &= 0x7fff; 13 ux.i.se |= uy.i.se & 0x8000; 14 return ux.f; 15} 16#endif 17