1 | /* |
2 | * ==================================================== |
3 | * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. |
4 | * |
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 | * ==================================================== |
10 | */ |
11 | |
12 | /* |
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. |
16 | */ |
17 | |
18 | #include "math_libm.h" |
19 | #include "math_private.h" |
20 | |
21 | double copysign(double x, double y) |
22 | { |
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; |
28 | } |
29 | libm_hidden_def(copysign) |
30 | |