OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libgfortran/] [c99_protos.h] - Blame information for rev 867

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 733 jeremybenn
/* Declarations of various C99 functions
2
   Copyright (C) 2004, 2006, 2007, 2009 Free Software Foundation, Inc.
3
 
4
This file is part of the GNU Fortran 95 runtime library (libgfortran).
5
 
6
Libgfortran is free software; you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation; either version 3, or (at your option)
9
any later version.
10
 
11
Libgfortran is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
GNU General Public License for more details.
15
 
16
Under Section 7 of GPL version 3, you are granted additional
17
permissions described in the GCC Runtime Library Exception, version
18
3.1, as published by the Free Software Foundation.
19
 
20
You should have received a copy of the GNU General Public License and
21
a copy of the GCC Runtime Library Exception along with this program;
22
see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
23
<http://www.gnu.org/licenses/>.  */
24
 
25
#ifndef C99_PROTOS_H
26
#define C99_PROTOS_H 1
27
 
28
/* float variants of libm functions */
29
#ifndef HAVE_ACOSF
30
#define HAVE_ACOSF 1
31
extern float acosf(float);
32
#endif
33
 
34
#if HAVE_ACOSH && !HAVE_ACOSHF
35
#define HAVE_ACOSHF 1
36
extern float acoshf(float);
37
#endif
38
 
39
#ifndef HAVE_ASINF
40
#define HAVE_ASINF 1
41
extern float asinf(float);
42
#endif
43
 
44
#if HAVE_ASINH && !HAVE_ASINHF
45
#define HAVE_ASINHF 1
46
extern float asinhf(float);
47
#endif
48
 
49
#ifndef HAVE_ATAN2F
50
#define HAVE_ATAN2F 1
51
extern float atan2f(float, float);
52
#endif
53
 
54
#ifndef HAVE_ATANF
55
#define HAVE_ATANF 1
56
extern float atanf(float);
57
#endif
58
 
59
#if HAVE_ATANH && !HAVE_ATANHF
60
#define HAVE_ATANHF 1
61
extern float atanhf(float);
62
#endif
63
 
64
#ifndef HAVE_CEILF
65
#define HAVE_CEILF 1
66
extern float ceilf(float);
67
#endif
68
 
69
#ifndef HAVE_COPYSIGNF
70
#define HAVE_COPYSIGNF 1
71
extern float copysignf(float, float);
72
#endif
73
 
74
#ifndef HAVE_COSF
75
#define HAVE_COSF 1
76
extern float cosf(float);
77
#endif
78
 
79
#ifndef HAVE_COSHF
80
#define HAVE_COSHF 1
81
extern float coshf(float);
82
#endif
83
 
84
#ifndef HAVE_EXPF
85
#define HAVE_EXPF 1
86
extern float expf(float);
87
#endif
88
 
89
#ifndef HAVE_FABSF
90
#define HAVE_FABSF 1
91
extern float fabsf(float);
92
#endif
93
 
94
#ifndef HAVE_FLOORF
95
#define HAVE_FLOORF 1
96
extern float floorf(float);
97
#endif
98
 
99
#ifndef HAVE_FLOORL
100
#define HAVE_FLOORL 1
101
extern long double floorl (long double x);
102
#endif
103
 
104
#ifndef HAVE_FMODF
105
#define HAVE_FMODF 1
106
extern float fmodf (float x, float y);
107
#endif
108
 
109
#ifndef HAVE_FMODL
110
#define HAVE_FMODL 1
111
extern long double fmodl (long double x, long double y);
112
#endif
113
 
114
#ifndef HAVE_FREXPF
115
#define HAVE_FREXPF 1
116
extern float frexpf(float, int *);
117
#endif
118
 
119
#ifndef HAVE_HYPOTF
120
#define HAVE_HYPOTF 1
121
extern float hypotf(float, float);
122
#endif
123
 
124
#ifndef HAVE_LOGF
125
#define HAVE_LOGF 1
126
extern float logf(float);
127
#endif
128
 
129
#ifndef HAVE_LOG10F
130
#define HAVE_LOG10F 1
131
extern float log10f(float);
132
#endif
133
 
134
#ifndef HAVE_SCALBN
135
#define HAVE_SCALBN 1
136
extern double scalbn(double, int);
137
#endif
138
 
139
#ifndef HAVE_SCALBNF
140
#define HAVE_SCALBNF 1
141
extern float scalbnf(float, int);
142
#endif
143
 
144
#ifndef HAVE_SINF
145
#define HAVE_SINF 1
146
extern float sinf(float);
147
#endif
148
 
149
#ifndef HAVE_SINHF
150
#define HAVE_SINHF 1
151
extern float sinhf(float);
152
#endif
153
 
154
#ifndef HAVE_SQRTF
155
#define HAVE_SQRTF 1
156
extern float sqrtf(float);
157
#endif
158
 
159
#ifndef HAVE_TANF
160
#define HAVE_TANF 1
161
extern float tanf(float);
162
#endif
163
 
164
#ifndef HAVE_TANHF
165
#define HAVE_TANHF 1
166
extern float tanhf(float);
167
#endif
168
 
169
#ifndef HAVE_TRUNC
170
#define HAVE_TRUNC 1
171
extern double trunc(double);
172
#endif
173
 
174
#ifndef HAVE_TRUNCF
175
#define HAVE_TRUNCF 1
176
extern float truncf(float);
177
#endif
178
 
179
#ifndef HAVE_NEXTAFTERF
180
#define HAVE_NEXTAFTERF 1
181
extern float nextafterf(float, float);
182
#endif
183
 
184
#ifndef HAVE_POWF
185
#define HAVE_POWF 1
186
extern float powf(float, float);
187
#endif
188
 
189
#ifndef HAVE_ROUND
190
#define HAVE_ROUND 1
191
extern double round(double);
192
#endif
193
 
194
#ifndef HAVE_ROUNDF
195
#define HAVE_ROUNDF 1
196
extern float roundf(float);
197
#endif
198
 
199
#if !defined(HAVE_ROUNDL)
200
#define HAVE_ROUNDL 1
201
extern long double roundl(long double);
202
#endif
203
 
204
 
205
 
206
#if !defined(HAVE_LROUNDF) && defined(HAVE_ROUNDF)
207
#define HAVE_LROUNDF 1
208
long int lroundf (float);
209
#endif
210
 
211
#if !defined(HAVE_LROUND) && defined(HAVE_ROUND)
212
#define HAVE_LROUND 1
213
long int lround (double);
214
#endif
215
 
216
#if !defined(HAVE_LROUNDL) && defined(HAVE_ROUNDL)
217
#define HAVE_LROUNDL 1
218
long int lroundl (long double);
219
#endif
220
 
221
#if !defined(HAVE_LLROUNDF) && defined(HAVE_ROUNDF)
222
#define HAVE_LLROUNDF 1
223
long long int llroundf (float);
224
#endif
225
 
226
#if !defined(HAVE_LLROUND) && defined(HAVE_ROUND)
227
#define HAVE_LLROUND 1
228
long long int llround (double);
229
#endif
230
 
231
#if !defined(HAVE_LLROUNDL) && defined(HAVE_ROUNDL)
232
#define HAVE_LLROUNDL 1
233
long long int llroundl (long double);
234
#endif
235
 
236
/* Wrappers for systems without the various C99 single precision Bessel
237
   functions.  */
238
 
239
#if defined(HAVE_J0) && ! defined(HAVE_J0F)
240
#define HAVE_J0F 1
241
extern float j0f (float);
242
#endif
243
 
244
#if defined(HAVE_J1) && !defined(HAVE_J1F)
245
#define HAVE_J1F 1
246
extern float j1f (float);
247
#endif
248
 
249
#if defined(HAVE_JN) && !defined(HAVE_JNF)
250
#define HAVE_JNF 1
251
extern float jnf (int, float);
252
#endif
253
 
254
#if defined(HAVE_Y0) && !defined(HAVE_Y0F)
255
#define HAVE_Y0F 1
256
extern float y0f (float);
257
#endif
258
 
259
#if defined(HAVE_Y1) && !defined(HAVE_Y1F)
260
#define HAVE_Y1F 1
261
extern float y1f (float);
262
#endif
263
 
264
#if defined(HAVE_YN) && !defined(HAVE_YNF)
265
#define HAVE_YNF 1
266
extern float ynf (int, float);
267
#endif
268
 
269
 
270
/* Wrappers for systems without the C99 erff() and erfcf() functions.  */
271
 
272
#if defined(HAVE_ERF) && !defined(HAVE_ERFF)
273
#define HAVE_ERFF 1
274
extern float erff (float);
275
#endif
276
 
277
#if defined(HAVE_ERFC) && !defined(HAVE_ERFCF)
278
#define HAVE_ERFCF 1
279
extern float erfcf (float);
280
#endif
281
 
282
 
283
 
284
/* log10l is needed on all platforms for decimal I/O */
285
#ifndef HAVE_LOG10L
286
#define HAVE_LOG10L 1
287
extern long double log10l(long double);
288
#endif
289
 
290
 
291
/* complex math functions */
292
 
293
#if !defined(HAVE_CABSF)
294
#define HAVE_CABSF 1
295
extern float cabsf (float complex);
296
#endif
297
 
298
#if !defined(HAVE_CABS)
299
#define HAVE_CABS 1
300
extern double cabs (double complex);
301
#endif
302
 
303
#if !defined(HAVE_CABSL) && defined(HAVE_HYPOTL)
304
#define HAVE_CABSL 1
305
extern long double cabsl (long double complex);
306
#endif
307
 
308
 
309
#if !defined(HAVE_CARGF)
310
#define HAVE_CARGF 1
311
extern float cargf (float complex);
312
#endif
313
 
314
#if !defined(HAVE_CARG)
315
#define HAVE_CARG 1
316
extern double carg (double complex);
317
#endif
318
 
319
#if !defined(HAVE_CARGL) && defined(HAVE_ATAN2L)
320
#define HAVE_CARGL 1
321
extern long double cargl (long double complex);
322
#endif
323
 
324
 
325
#if !defined(HAVE_CEXPF)
326
#define HAVE_CEXPF 1
327
extern float complex cexpf (float complex);
328
#endif
329
 
330
#if !defined(HAVE_CEXP)
331
#define HAVE_CEXP 1
332
extern double complex cexp (double complex);
333
#endif
334
 
335
#if !defined(HAVE_CEXPL) && defined(HAVE_COSL) && defined(HAVE_SINL) && defined(EXPL)
336
#define HAVE_CEXPL 1
337
extern long double complex cexpl (long double complex);
338
#endif
339
 
340
 
341
#if !defined(HAVE_CLOGF)
342
#define HAVE_CLOGF 1
343
extern float complex clogf (float complex);
344
#endif
345
 
346
#if !defined(HAVE_CLOG)
347
#define HAVE_CLOG 1
348
extern double complex clog (double complex);
349
#endif
350
 
351
#if !defined(HAVE_CLOGL) && defined(HAVE_LOGL) && defined(HAVE_CABSL) && defined(HAVE_CARGL)
352
#define HAVE_CLOGL 1
353
extern long double complex clogl (long double complex);
354
#endif
355
 
356
 
357
#if !defined(HAVE_CLOG10F)
358
#define HAVE_CLOG10F 1
359
extern float complex clog10f (float complex);
360
#endif
361
 
362
#if !defined(HAVE_CLOG10)
363
#define HAVE_CLOG10 1
364
extern double complex clog10 (double complex);
365
#endif
366
 
367
#if !defined(HAVE_CLOG10L) && defined(HAVE_LOG10L) && defined(HAVE_CABSL) && defined(HAVE_CARGL)
368
#define HAVE_CLOG10L 1
369
extern long double complex clog10l (long double complex);
370
#endif
371
 
372
 
373
#if !defined(HAVE_CPOWF)
374
#define HAVE_CPOWF 1
375
extern float complex cpowf (float complex, float complex);
376
#endif
377
 
378
#if !defined(HAVE_CPOW)
379
#define HAVE_CPOW 1
380
extern double complex cpow (double complex, double complex);
381
#endif
382
 
383
#if !defined(HAVE_CPOWL) && defined(HAVE_CEXPL) && defined(HAVE_CLOGL)
384
#define HAVE_CPOWL 1
385
extern long double complex cpowl (long double complex, long double complex);
386
#endif
387
 
388
 
389
#if !defined(HAVE_CSQRTF)
390
#define HAVE_CSQRTF 1 
391
extern float complex csqrtf (float complex);
392
#endif
393
 
394
#if !defined(HAVE_CSQRT)
395
#define HAVE_CSQRT 1
396
extern double complex csqrt (double complex);
397
#endif
398
 
399
#if !defined(HAVE_CSQRTL) && defined(HAVE_COPYSIGNL) && defined(HAVE_SQRTL) && defined(HAVE_FABSL) && defined(HAVE_HYPOTL)
400
#define HAVE_CSQRTL 1
401
extern long double complex csqrtl (long double complex);
402
#endif
403
 
404
 
405
#if !defined(HAVE_CSINHF)
406
#define HAVE_CSINHF 1
407
extern float complex csinhf (float complex);
408
#endif
409
 
410
#if !defined(HAVE_CSINH)
411
#define HAVE_CSINH 1
412
extern double complex csinh (double complex);
413
#endif
414
 
415
#if !defined(HAVE_CSINHL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
416
#define HAVE_CSINHL 1
417
extern long double complex csinhl (long double complex);
418
#endif
419
 
420
 
421
#if !defined(HAVE_CCOSHF)
422
#define HAVE_CCOSHF 1
423
extern float complex ccoshf (float complex);
424
#endif
425
 
426
#if !defined(HAVE_CCOSH)
427
#define HAVE_CCOSH 1
428
extern double complex ccosh (double complex);
429
#endif
430
 
431
#if !defined(HAVE_CCOSHL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
432
#define HAVE_CCOSHL 1
433
extern long double complex ccoshl (long double complex);
434
#endif
435
 
436
 
437
#if !defined(HAVE_CTANHF)
438
#define HAVE_CTANHF 1
439
extern float complex ctanhf (float complex);
440
#endif
441
 
442
#if !defined(HAVE_CTANH)
443
#define HAVE_CTANH 1
444
extern double complex ctanh (double complex);
445
#endif
446
 
447
#if !defined(HAVE_CTANHL) && defined(HAVE_TANL) && defined(HAVE_TANHL)
448
#define HAVE_CTANHL 1
449
extern long double complex ctanhl (long double complex);
450
#endif
451
 
452
 
453
#if !defined(HAVE_CSINF)
454
#define HAVE_CSINF 1
455
extern float complex csinf (float complex);
456
#endif
457
 
458
#if !defined(HAVE_CSIN)
459
#define HAVE_CSIN 1
460
extern double complex csin (double complex);
461
#endif
462
 
463
#if !defined(HAVE_CSINL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
464
#define HAVE_CSINL 1
465
extern long double complex csinl (long double complex);
466
#endif
467
 
468
 
469
#if !defined(HAVE_CCOSF)
470
#define HAVE_CCOSF 1
471
extern float complex ccosf (float complex);
472
#endif
473
 
474
#if !defined(HAVE_CCOS)
475
#define HAVE_CCOS 1
476
extern double complex ccos (double complex);
477
#endif
478
 
479
#if !defined(HAVE_CCOSL) && defined(HAVE_COSL) && defined(HAVE_COSHL) && defined(HAVE_SINL) && defined(HAVE_SINHL)
480
#define HAVE_CCOSL 1
481
extern long double complex ccosl (long double complex);
482
#endif
483
 
484
 
485
#if !defined(HAVE_CTANF)
486
#define HAVE_CTANF 1
487
extern float complex ctanf (float complex);
488
#endif
489
 
490
#if !defined(HAVE_CTAN)
491
#define HAVE_CTAN 1
492
extern double complex ctan (double complex);
493
#endif
494
 
495
#if !defined(HAVE_CTANL) && defined(HAVE_TANL) && defined(HAVE_TANHL)
496
#define HAVE_CTANL 1
497
extern long double complex ctanl (long double complex);
498
#endif
499
 
500
 
501
/* Complex ACOS.  */
502
 
503
#if !defined(HAVE_CACOSF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
504
#define HAVE_CACOSF 1
505
extern complex float cacosf (complex float z);
506
#endif
507
 
508
#if !defined(HAVE_CACOS) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
509
#define HAVE_CACOS 1
510
extern complex double cacos (complex double z);
511
#endif
512
 
513
#if !defined(HAVE_CACOSL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
514
#define HAVE_CACOSL 1
515
extern complex long double cacosl (complex long double z);
516
#endif
517
 
518
 
519
/* Complex ASIN.  */
520
 
521
#if !defined(HAVE_CASINF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
522
#define HAVE_CASINF 1
523
extern complex float casinf (complex float z);
524
#endif
525
 
526
#if !defined(HAVE_CASIN) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
527
#define HAVE_CASIN 1
528
extern complex double casin (complex double z);
529
#endif
530
 
531
#if !defined(HAVE_CASINL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
532
#define HAVE_CASINL 1
533
extern complex long double casinl (complex long double z);
534
#endif
535
 
536
 
537
/* Complex ATAN.  */
538
 
539
#if !defined(HAVE_CATANF) && defined(HAVE_CLOGF)
540
#define HAVE_CATANF 1
541
extern complex float catanf (complex float z);
542
#endif
543
 
544
#if !defined(HAVE_CATAN) && defined(HAVE_CLOG)
545
#define HAVE_CATAN 1
546
extern complex double catan (complex double z);
547
#endif
548
 
549
#if !defined(HAVE_CATANL) && defined(HAVE_CLOGL)
550
#define HAVE_CATANL 1
551
extern complex long double catanl (complex long double z);
552
#endif
553
 
554
 
555
/* Complex ASINH.  */
556
 
557
#if !defined(HAVE_CASINHF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
558
#define HAVE_CASINHF 1
559
extern complex float casinhf (complex float z);
560
#endif
561
 
562
 
563
#if !defined(HAVE_CASINH) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
564
#define HAVE_CASINH 1
565
extern complex double casinh (complex double z);
566
#endif
567
 
568
#if !defined(HAVE_CASINHL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
569
#define HAVE_CASINHL 1
570
extern complex long double casinhl (complex long double z);
571
#endif
572
 
573
 
574
/* Complex ACOSH.  */
575
 
576
#if !defined(HAVE_CACOSHF) && defined(HAVE_CLOGF) && defined(HAVE_CSQRTF)
577
#define HAVE_CACOSHF 1
578
extern complex float cacoshf (complex float z);
579
#endif
580
 
581
#if !defined(HAVE_CACOSH) && defined(HAVE_CLOG) && defined(HAVE_CSQRT)
582
#define HAVE_CACOSH 1
583
extern complex double cacosh (complex double z);
584
#endif
585
 
586
#if !defined(HAVE_CACOSHL) && defined(HAVE_CLOGL) && defined(HAVE_CSQRTL)
587
#define HAVE_CACOSHL 1
588
extern complex long double cacoshl (complex long double z);
589
#endif
590
 
591
 
592
/* Complex ATANH.  */
593
 
594
#if !defined(HAVE_CATANHF) && defined(HAVE_CLOGF)
595
#define HAVE_CATANHF 1
596
extern complex float catanhf (complex float z);
597
#endif
598
 
599
#if !defined(HAVE_CATANH) && defined(HAVE_CLOG)
600
#define HAVE_CATANH 1
601
extern complex double catanh (complex double z);
602
#endif
603
 
604
#if !defined(HAVE_CATANHL) && defined(HAVE_CLOGL)
605
#define HAVE_CATANHL 1
606
extern complex long double catanhl (complex long double z);
607
#endif
608
 
609
 
610
/* Gamma-related prototypes.  */
611
#if !defined(HAVE_TGAMMA)
612
#define HAVE_TGAMMA 1
613
extern double tgamma (double);
614
#endif
615
 
616
#if !defined(HAVE_LGAMMA)
617
#define HAVE_LGAMMA 1
618
extern double lgamma (double);
619
#endif
620
 
621
#if defined(HAVE_TGAMMA) && !defined(HAVE_TGAMMAF)
622
#define HAVE_TGAMMAF 1
623
extern float tgammaf (float);
624
#endif
625
 
626
#if defined(HAVE_LGAMMA) && !defined(HAVE_LGAMMAF)
627
#define HAVE_LGAMMAF 1
628
extern float lgammaf (float);
629
#endif
630
 
631
 
632
#endif  /* C99_PROTOS_H  */
633
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.