xfail scan-tree-dump-not throw in g++.dg/pr99966.C on hppa*64*-*-*
[official-gcc.git] / gcc / m2 / mc-boot-ch / Glibm.c
blob93e3e437ee11023e9f38bd0b0b6a2a2c3af14337
1 /* Glibm.c provides access to some libm functions.
3 Copyright (C) 2016-2024 Free Software Foundation, Inc.
4 Contributed by Gaius Mulley <gaius@glam.ac.uk>.
6 This file is part of GNU Modula-2.
8 GNU Modula-2 is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3, or (at your option)
11 any later version.
13 GNU Modula-2 is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GNU Modula-2; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */
22 #define _libm_C
23 #include "config.h"
24 #include "system.h"
26 #include "Glibm.h"
28 double
29 libm_pow (double x, double y)
31 return pow (x, y);
34 float
35 libm_powf (float x, float y)
37 return powf (x, y);
40 long double
41 libm_powl (long double x, long double y)
43 return powl (x, y);
46 double
47 libm_sqrt (double x)
49 return sqrt (x);
52 float
53 libm_sqrtf (float x)
55 return sqrtf (x);
58 long double
59 libm_sqrtl (long double x)
61 return sqrtl (x);
64 double
65 libm_asin (double x)
67 return asin (x);
70 float
71 libm_asinf (float x)
73 return asinf (x);
76 long double
77 libm_asinl (long double x)
79 return asinl (x);
82 double
83 libm_atan (double x)
85 return atan (x);
88 float
89 libm_atanf (float x)
91 return atanf (x);
94 long double
95 libm_atanl (long double x)
97 return atanl (x);
100 double
101 libm_atan2 (double x, double y)
103 return atan2 (x, y);
106 float
107 libm_atan2f (float x, float y)
109 return atan2f (x, y);
112 long double
113 libm_atan2l (long double x, long double y)
115 return atan2l (x, y);
118 double
119 libm_sin (double x)
121 return sin (x);
124 float
125 libm_sinf (float x)
127 return sinf (x);
130 long double
131 libm_sinl (long double x)
133 return sinl (x);
136 double
137 libm_cos (double x)
139 return cos (x);
142 float
143 libm_cosf (float x)
145 return cosf (x);
148 long double
149 libm_cosl (long double x)
151 return cosl (x);
154 double
155 libm_tan (double x)
157 return tan (x);
160 float
161 libm_tanf (float x)
163 return tanf (x);
166 long double
167 libm_tanl (long double x)
169 return tanl (x);
172 float
173 libm_floorf (float x)
175 return floorf (x);
178 double
179 libm_floor (double x)
181 return floor (x);
184 long double
185 libm_floorl (long double x)
187 return floorl (x);
190 float
191 libm_expf (float x)
193 return expf (x);
196 double
197 libm_exp (double x)
199 return exp (x);
202 long double
203 libm_expl (long double x)
205 return expl (x);
208 float
209 libm_logf (float x)
211 return logf (x);
214 double
215 libm_log (double x)
217 return log (x);
220 long double
221 libm_logl (long double x)
223 return logl (x);