source: src/libcfa/math @ eaace25

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since eaace25 was 53a6c2a, checked in by Peter A. Buhr <pabuhr@…>, 7 years ago

change meaning of sepOn, and replace #if with #pragma once in include files

  • Property mode set to 100644
File size: 10.6 KB
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// math --
8//
9// Author           : Peter A. Buhr
10// Created On       : Mon Apr 18 23:37:04 2016
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Fri Jul  7 09:34:15 2017
13// Update Count     : 61
14//
15
16#pragma once
17
18extern "C" {
19#include <math.h>                                                                               // fpclassify, isfinite, isnormal, isnan, isinf
20} // extern "C"
21
22float ?%?( float, float );
23float fmod( float, float );
24double ?%?( double, double );
25// extern "C" { double fmod( double, double ); }
26long double ?%?( long double, long double );
27long double fmod( long double, long double );
28
29float remainder( float, float );
30// extern "C" { double remainder( double, double ); }
31long double remainder( long double, long double );
32
33[ int, float ] remquo( float, float );
34float remquo( float, float, int * );
35[ int, double ] remquo( double, double );
36// extern "C" { double remquo( double, double, int * ); }
37[ int, long double ] remquo( long double, long double );
38long double remquo( long double, long double, int * );
39
40[ int, float ] div( float, float );                                             // alternative name for remquo
41float div( float, float, int * );
42[ int, double ] div( double, double );
43// extern "C" { double div( double, double, int * ); }
44[ int, long double ] div( long double, long double );
45long double div( long double, long double, int * );
46
47float fma( float, float, float );
48// extern "C" { double fma( double, double, double ); }
49long double fma( long double, long double, long double );
50
51float fdim( float, float );
52// extern "C" { double fdim( double, double ); }
53long double fdim( long double, long double );
54
55float nan( const char * );
56// extern "C" { double nan( const char * ); }
57long double nan( const char * );
58
59//---------------------- Exponential ----------------------
60
61float exp( float );
62// extern "C" { double exp( double ); }
63long double exp( long double );
64float _Complex exp( float _Complex );
65double _Complex exp( double _Complex );
66long double _Complex exp( long double _Complex );
67
68float exp2( float );
69// extern "C" { double exp2( double ); }
70long double exp2( long double );
71// float _Complex exp2( float _Complex );
72// double _Complex exp2( double _Complex );
73// long double _Complex exp2( long double _Complex );
74
75float expm1( float );
76// extern "C" { double expm1( double ); }
77long double expm1( long double );
78
79float log( float );
80// extern "C" { double log( double ); }
81long double log( long double );
82float _Complex log( float _Complex );
83double _Complex log( double _Complex );
84long double _Complex log( long double _Complex );
85
86float log2( float );
87// extern "C" { double log2( double ); }
88long double log2( long double );
89// float _Complex log2( float _Complex );
90// double _Complex log2( double _Complex );
91// long double _Complex log2( long double _Complex );
92
93float log10( float );
94// extern "C" { double log10( double ); }
95long double log10( long double );
96// float _Complex log10( float _Complex );
97// double _Complex log10( double _Complex );
98// long double _Complex log10( long double _Complex );
99
100float log1p( float );
101// extern "C" { double log1p( double ); }
102long double log1p( long double );
103
104int ilogb( float );
105// extern "C" { int ilogb( double ); }
106int ilogb( long double );
107
108float logb( float );
109// extern "C" { double logb( double ); }
110long double logb( long double );
111
112//---------------------- Power ----------------------
113
114float sqrt( float );
115// extern "C" { double sqrt( double ); }
116long double sqrt( long double );
117float _Complex sqrt( float _Complex );
118double _Complex sqrt( double _Complex );
119long double _Complex sqrt( long double _Complex );
120
121float cbrt( float );
122// extern "C" { double cbrt( double ); }
123long double cbrt( long double );
124
125float hypot( float, float );
126// extern "C" { double hypot( double, double ); }
127long double hypot( long double, long double );
128
129float pow( float, float );
130// extern "C" { double pow( double, double ); }
131long double pow( long double, long double );
132float _Complex pow( float _Complex, float _Complex );
133double _Complex pow( double _Complex, double _Complex );
134long double _Complex pow( long double _Complex, long double _Complex );
135
136//---------------------- Trigonometric ----------------------
137
138float sin( float );
139// extern "C" { double sin( double ); }
140long double sin( long double );
141float _Complex sin( float _Complex );
142double _Complex sin( double _Complex );
143long double _Complex sin( long double _Complex );
144
145float cos( float );
146// extern "C" { double cos( double ); }
147long double cos( long double );
148float _Complex cos( float _Complex );
149double _Complex cos( double _Complex );
150long double _Complex cos( long double _Complex );
151
152float tan( float );
153// extern "C" { double tan( double ); }
154long double tan( long double );
155float _Complex tan( float _Complex );
156double _Complex tan( double _Complex );
157long double _Complex tan( long double _Complex );
158
159float asin( float );
160// extern "C" { double asin( double ); }
161long double asin( long double );
162float _Complex asin( float _Complex );
163double _Complex asin( double _Complex );
164long double _Complex asin( long double _Complex );
165
166float acos( float );
167// extern "C" { double acos( double ); }
168long double acos( long double );
169float _Complex acos( float _Complex );
170double _Complex acos( double _Complex );
171long double _Complex acos( long double _Complex );
172
173float atan( float );
174// extern "C" { double atan( double ); }
175long double atan( long double );
176float _Complex atan( float _Complex );
177double _Complex atan( double _Complex );
178long double _Complex atan( long double _Complex );
179
180float atan2( float, float );
181// extern "C" { double atan2( double, double ); }
182long double atan2( long double, long double );
183
184float atan( float, float );                                                             // alternative name for atan2
185double atan( double, double );
186long double atan( long double, long double );
187
188//---------------------- Hyperbolic ----------------------
189
190float sinh( float );
191// extern "C" { double sinh( double ); }
192long double sinh( long double );
193float _Complex sinh( float _Complex );
194double _Complex sinh( double _Complex );
195long double _Complex sinh( long double _Complex );
196
197float cosh( float );
198// extern "C" { double cosh( double ); }
199long double cosh( long double );
200float _Complex cosh( float _Complex );
201double _Complex cosh( double _Complex );
202long double _Complex cosh( long double _Complex );
203
204float tanh( float );
205// extern "C" { double tanh( double ); }
206long double tanh( long double );
207float _Complex tanh( float _Complex );
208double _Complex tanh( double _Complex );
209long double _Complex tanh( long double _Complex );
210
211float asinh( float );
212// extern "C" { double asinh( double ); }
213long double asinh( long double );
214float _Complex asinh( float _Complex );
215double _Complex asinh( double _Complex );
216long double _Complex asinh( long double _Complex );
217
218float acosh( float );
219// extern "C" { double acosh( double ); }
220long double acosh( long double );
221float _Complex acosh( float _Complex );
222double _Complex acosh( double _Complex );
223long double _Complex acosh( long double _Complex );
224
225float atanh( float );
226// extern "C" { double atanh( double ); }
227long double atanh( long double );
228float _Complex atanh( float _Complex );
229double _Complex atanh( double _Complex );
230long double _Complex atanh( long double _Complex );
231
232//---------------------- Error / Gamma ----------------------
233
234float erf( float );
235// extern "C" { double erf( double ); }
236long double erf( long double );
237// float _Complex erf( float _Complex );
238// double _Complex erf( double _Complex );
239// long double _Complex erf( long double _Complex );
240
241float erfc( float );
242// extern "C" { double erfc( double ); }
243long double erfc( long double );
244// float _Complex erfc( float _Complex );
245// double _Complex erfc( double _Complex );
246// long double _Complex erfc( long double _Complex );
247
248float lgamma( float );
249// extern "C" { double lgamma( double ); }
250long double lgamma( long double );
251float lgamma( float, int * );
252double lgamma( double, int * );
253long double lgamma( long double, int * );
254
255float tgamma( float );
256// extern "C" { double tgamma( double ); }
257long double tgamma( long double );
258
259//---------------------- Nearest Integer ----------------------
260
261float floor( float );
262// extern "C" { double floor( double ); }
263long double floor( long double );
264
265float ceil( float );
266// extern "C" { double ceil( double ); }
267long double ceil( long double );
268
269float trunc( float );
270// extern "C" { double trunc( double ); }
271long double trunc( long double );
272
273float rint( float );
274long double rint( long double );
275long int rint( float );
276long int rint( double );
277long int rint( long double );
278long long int rint( float );
279long long int rint( double );
280long long int rint( long double );
281
282long int lrint( float );
283// extern "C" { long int lrint( double ); }
284long int lrint( long double );
285long long int llrint( float );
286// extern "C" { long long int llrint( double ); }
287long long int llrint( long double );
288
289float nearbyint( float );
290// extern "C" { double nearbyint( double ); }
291long double nearbyint( long double );
292
293float round( float );
294long double round( long double );
295long int round( float );
296long int round( double );
297long int round( long double );
298long long int round( float );
299long long int round( double );
300long long int round( long double );
301
302long int lround( float );
303// extern "C" { long int lround( double ); }
304long int lround( long double );
305long long int llround( float );
306// extern "C" { long long int llround( double ); }
307long long int llround( long double );
308
309//---------------------- Manipulation ----------------------
310
311float copysign( float, float );
312// extern "C" { double copysign( double, double ); }
313long double copysign( long double, long double );
314
315float frexp( float, int * );
316// extern "C" { double frexp( double, int * ); }
317long double frexp( long double, int * );
318
319float ldexp( float, int );
320// extern "C" { double ldexp( double, int ); }
321long double ldexp( long double, int );
322
323[ float, float ] modf( float );
324float modf( float, float * );
325[ double, double ] modf( double );
326// extern "C" { double modf( double, double * ); }
327[ long double, long double ] modf( long double );
328long double modf( long double, long double * );
329
330float nextafter( float, float );
331// extern "C" { double nextafter( double, double ); }
332long double nextafter( long double, long double );
333
334float nexttoward( float, long double );
335// extern "C" { double nexttoward( double, long double ); }
336long double nexttoward( long double, long double );
337
338float scalbn( float, int );
339// extern "C" { double scalbn( double, int ); }
340long double scalbn( long double, int );
341
342float scalbln( float, long int );
343// extern "C" { double scalbln( double, long int ); }
344long double scalbln( long double, long int );
345
346// Local Variables: //
347// mode: c //
348// tab-width: 4 //
349// End: //
Note: See TracBrowser for help on using the repository browser.