fix c6x toolchain compile
[uclibc-ng.git] / libm / s_copysign.c
blob33e1531670e0fb3b569e65c4a401146d8b46743b
1 /*
2 * ====================================================
3 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5 * Developed at SunPro, a Sun Microsystems, Inc. business.
6 * Permission to use, copy, modify, and distribute this
7 * software is freely granted, provided that this notice
8 * is preserved.
9 * ====================================================
13 * copysign(double x, double y)
14 * copysign(x,y) returns a value with the magnitude of x and
15 * with the sign bit of y.
18 #include "math.h"
19 #include "math_private.h"
21 double copysign(double x, double y)
23 u_int32_t hx,hy;
24 GET_HIGH_WORD(hx,x);
25 GET_HIGH_WORD(hy,y);
26 SET_HIGH_WORD(x,(hx&0x7fffffff)|(hy&0x80000000));
27 return x;
29 libm_hidden_def(copysign)