]> Git Repo - uclibc-ng.git/blob - libm/float/nantst.c
Seems we were lacking an acos() implementation
[uclibc-ng.git] / libm / float / nantst.c
1 float inf = 1.0f/0.0f;
2 float nnn = 1.0f/0.0f - 1.0f/0.0f;
3 float fin = 1.0f;
4 float neg = -1.0f;
5 float nn2;
6
7 int isnanf(), isfinitef(), signbitf();
8
9 void pvalue (char *str, float x)
10 {
11 union
12   {
13     float f;
14     unsigned int i;
15   }u;
16
17 printf("%s ", str);
18 u.f = x;
19 printf("%08x\n", u.i);
20 }
21
22
23 int
24 main()
25 {
26
27 if (!isnanf(nnn))
28   abort();
29 pvalue("nnn", nnn);
30 pvalue("inf", inf);
31 nn2 = inf - inf;
32 pvalue("inf - inf", nn2);
33 if (isnanf(fin))
34   abort();
35 if (isnanf(inf))
36   abort();
37 if (!isfinitef(fin))
38   abort();
39 if (isfinitef(nnn))
40   abort();
41 if (isfinitef(inf))
42   abort();
43 if (!signbitf(neg))
44   abort();
45 if (signbitf(fin))
46   abort();
47 if (signbitf(inf))
48   abort();
49 /*
50 if (signbitf(nnn))
51   abort();
52   */
53 exit (0);
54 }
This page took 0.025919 seconds and 4 git commands to generate.