1
/* check_float.c -- Rolf Niepraschk 11/97, niepraschk@ptb.de */
2
/* test program for the cephes library definitions */
8
#define LOG2EA 0.44269504088896340735992
9
#define EQS(x, y) (strcmp(x, y) == 0)
10
#define ACCURACY "%1.4f"
14
union {unsigned short s[5]; double d;} f;
18
XTYPE X[] = { {{0037742,0124354,0122560,0057703}, "DEC"},
19
{{0x0bf8,0x94ae,0x551d,0x3fdc}, "IBMPC"},
20
{{0x3fdc,0x551d,0x94ae,0x0bf8}, "MIEEE"},
25
int main (int argc, char *argv[])
27
int i; char TMPSTR[1024]; char LOG2EA_STR[80];
30
sprintf(LOG2EA_STR, ACCURACY, LOG2EA);
32
for (i=0; *X[i].name; i++)
34
sprintf(TMPSTR, ACCURACY, X[i].f.d);
35
if (EQS(TMPSTR, LOG2EA_STR)) break;
39
printf("Your system needs \"#define %s = 1\"\n", X[i].name);
41
printf("Try to use \"#define %s = 1\"\n", X[--i].name);