1 /* Copyright JS Foundation and other contributors, http://js.foundation
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 * This file is based on work under the following copyright and permission
16 * notice:
17 *
18 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
19 *
20 * Developed at SunSoft, a Sun Microsystems, Inc. business.
21 * Permission to use, copy, modify, and distribute this
22 * software is freely granted, provided that this notice
23 * is preserved.
24 *
25 * @(#)s_copysign.c 1.3 95/01/18
26 */
27
28 #include "jerry-libm-internal.h"
29
30 /* copysign(x,y) returns a value with the magnitude of x and
31 * with the sign bit of y.
32 */
33
34 double
copysign(double x,double y)35 copysign (double x, double y)
36 {
37 double_accessor ret;
38 ret.dbl = x;
39 ret.as_int.hi = (__HI (x) & 0x7fffffff) | (__HI (y) & 0x80000000);
40 return ret.dbl;
41 } /* copysign */
42