OSDN Git Service

Fix no pic
[uclinux-h8/uClinux-dist.git] / user / mathtest / 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 }