xref: /dflybsd-src/contrib/openbsd_libm/src/s_scalbn.c (revision 4382f29d99a100bd77a81697c2f699c11f6a472a)
1*05a0b428SJohn Marino /* @(#)s_scalbn.c 5.1 93/09/24 */
2*05a0b428SJohn Marino /*
3*05a0b428SJohn Marino  * ====================================================
4*05a0b428SJohn Marino  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5*05a0b428SJohn Marino  *
6*05a0b428SJohn Marino  * Developed at SunPro, a Sun Microsystems, Inc. business.
7*05a0b428SJohn Marino  * Permission to use, copy, modify, and distribute this
8*05a0b428SJohn Marino  * software is freely granted, provided that this notice
9*05a0b428SJohn Marino  * is preserved.
10*05a0b428SJohn Marino  * ====================================================
11*05a0b428SJohn Marino  */
12*05a0b428SJohn Marino 
13*05a0b428SJohn Marino /*
14*05a0b428SJohn Marino  * scalbn (double x, int n)
15*05a0b428SJohn Marino  * scalbn(x,n) returns x* 2**n  computed by  exponent
16*05a0b428SJohn Marino  * manipulation rather than by actually performing an
17*05a0b428SJohn Marino  * exponentiation or a multiplication.
18*05a0b428SJohn Marino  */
19*05a0b428SJohn Marino 
20*05a0b428SJohn Marino #include <float.h>
21*05a0b428SJohn Marino #include <math.h>
22*05a0b428SJohn Marino 
23*05a0b428SJohn Marino double
scalbn(double x,int n)24*05a0b428SJohn Marino scalbn (double x, int n)
25*05a0b428SJohn Marino {
26*05a0b428SJohn Marino 	return ldexp(x, n);
27*05a0b428SJohn Marino }
28*05a0b428SJohn Marino 
29*05a0b428SJohn Marino #if	LDBL_MANT_DIG == DBL_MANT_DIG
30*05a0b428SJohn Marino __strong_alias(scalbnl, scalbn);
31*05a0b428SJohn Marino #endif	/* LDBL_MANT_DIG == DBL_MANT_DIG */
32