aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/builtins-67.c
blob: 22267bd31b91acdea64c32380636283a0f433f12 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/* Check that conversion functions link correctly with -ffast-math.  */

/* { dg-do link } */
/* { dg-options "-ffast-math -lm" }  */
/* { dg-add-options c99_runtime } */

#include "builtins-config.h"

double floor (double);
float floorf (float);
long double floorl (long double);

double ceil (double);
float ceilf (float);
long double ceill (long double);

double round (double);
float roundf (float);
long double roundl (long double);

double rint (double);
float rintf (float);
long double rintl (long double);

int ifloor (double a) { return (int) floor (a); }
#ifdef HAVE_C99_RUNTIME
int ifloorf (float a) { return (int) floorf (a); }
int ifloorl (long double a) { return (int) floorl (a); }
#endif

long lfloor (double a) { return (long) floor (a); }
#ifdef HAVE_C99_RUNTIME
long lfloorf (float a) { return (long) floorf (a); }
long lfloorl (long double a) { return (long) floorl (a); }
#endif

long long llfloor (double a) { return (long long) floor (a); }
#ifdef HAVE_C99_RUNTIME
long long llfloorf (float a) { return (long long) floorf (a); }
long long llfloorl (long double a) { return (long long) floorl (a); }
#endif

int iceil (double a) { return (int) ceil (a); }
#ifdef HAVE_C99_RUNTIME
int iceilf (float a) { return (int) ceilf (a); }
int iceill (long double a) { return (int) ceill (a); }
#endif

long lceil (double a) { return (long) ceil (a); }
#ifdef HAVE_C99_RUNTIME
long lceilf (float a) { return (long) ceilf (a); }
long lceill (long double a) { return (long) ceill (a); }
#endif

long long llceil (double a) { return (long long) ceil (a); }
#ifdef HAVE_C99_RUNTIME
long long llceilf (float a) { return (long long) ceilf (a); }
long long llceill (long double a) { return (long long) ceill (a); }
#endif

#ifdef HAVE_C99_RUNTIME
int iround (double a) { return (int) round (a); }
int iroundf (float a) { return (int) roundf (a); }
int iroundl (long double a) { return (int) roundl (a); }
#endif

#ifdef HAVE_C99_RUNTIME
int irint (double a) { return (int) rint (a); }
int irintf (float a) { return (int) rintf (a); }
int irintl (long double a) { return (int) rintl (a); }
#endif

int main () { return 0; }