xref: /minix/lib/libm/src/ldbl_dummy.c (revision 84d9c625)
1 /* $NetBSD: ldbl_dummy.c,v 1.1 2013/11/12 17:36:14 joerg Exp $ */
2 
3 /*-
4  * Copyright (c) 2013 The NetBSD Foundation, Inc.
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
17  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
18  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
20  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26  * POSSIBILITY OF SUCH DAMAGE.
27  */
28 
29 /*
30  * Simple long double -> double wrappers for various transcendental functions.
31  * They work neither on the additional range of long double nor do they use
32  * the additional precision. They exist as stop gap fix for various programs
33  * picking up long double, e.g. via the C++ run time.
34  */
35 
36 #include <sys/cdefs.h>
37 __RCSID("$NetBSD: ldbl_dummy.c,v 1.1 2013/11/12 17:36:14 joerg Exp $");
38 
39 #include "namespace.h"
40 #include <math.h>
41 
42 __weak_alias(atan2l, _atan2l)
43 __weak_alias(hypotl, _hypotl)
44 __weak_alias(logl, _logl)
45 __weak_alias(log10l, _log10l)
46 __weak_alias(expl, _expl)
47 __weak_alias(exp2l, _exp2l)
48 __weak_alias(powl, _powl)
49 __weak_alias(cosl, _cosl)
50 __weak_alias(sinl, _sinl)
51 __weak_alias(tanl, _tanl)
52 __weak_alias(coshl, _coshl)
53 __weak_alias(sinhl, _sinhl)
54 __weak_alias(tanhl, _tanhl)
55 __weak_alias(acosl, _acosl)
56 __weak_alias(asinl, _asinl)
57 __weak_alias(atanl, _atanl)
58 __weak_alias(acoshl, _acoshl)
59 __weak_alias(asinhl, _asinhl)
60 __weak_alias(atanhl, _atanhl)
61 
62 long double
63 atan2l(long double y, long double x)
64 {
65 	return atan2(y, x);
66 }
67 
68 long double
69 hypotl(long double x, long double y)
70 {
71 	return hypot(x, y);
72 }
73 
74 long double
75 logl(long double x)
76 {
77 	return log(x);
78 }
79 
80 long double
81 log10l(long double x)
82 {
83 	return log10(x);
84 }
85 
86 long double
87 expl(long double x)
88 {
89 	return exp(x);
90 }
91 
92 long double
93 exp2l(long double x)
94 {
95 	return exp2(x);
96 }
97 
98 long double
99 powl(long double x, long double y)
100 {
101 	return pow(x, y);
102 }
103 
104 long double
105 cosl(long double x)
106 {
107 	return cos(x);
108 }
109 
110 long double
111 sinl(long double x)
112 {
113 	return sin(x);
114 }
115 
116 
117 long double
118 tanl(long double x)
119 {
120 	return tan(x);
121 }
122 
123 long double
124 sinhl(long double x)
125 {
126 	return sinh(x);
127 }
128 
129 long double
130 coshl(long double x)
131 {
132 	return cosh(x);
133 }
134 
135 long double
136 tanhl(long double x)
137 {
138 	return tanh(x);
139 }
140 
141 long double
142 acosl(long double x)
143 {
144 	return acos(x);
145 }
146 
147 long double
148 asinl(long double x)
149 {
150 	return asin(x);
151 }
152 
153 long double
154 atanl(long double x)
155 {
156 	return atan(x);
157 }
158 
159 long double
160 asinhl(long double x)
161 {
162 	return asinh(x);
163 }
164 
165 long double
166 acoshl(long double x)
167 {
168 	return acosh(x);
169 }
170 
171 long double
172 atanhl(long double x)
173 {
174 	return atanh(x);
175 }
176