[BACK]Return to endian.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / pari-2.2 / config

Annotation of OpenXM_contrib/pari-2.2/config/endian.c, Revision 1.2

1.2     ! noro        1: #include <stdio.h>
1.1       noro        2: main()
                      3: {
1.2     ! noro        4:   if (sizeof(long) == 4)
1.1       noro        5:   {
1.2     ! noro        6:     union {double d; unsigned long l[2];} x;
        !             7:     x.d = 2.;
        !             8:     if      (x.l[0]==0 && x.l[1]==(1UL<<30)) printf("1\n");
        !             9:     else if (x.l[1]==0 && x.l[0]==(1UL<<30)) printf("0\n");
        !            10:     else
        !            11:       printf("NOT IEEE (32 bit)\n");
        !            12:   }
1.1       noro       13:   else
1.2     ! noro       14:   {
        !            15:     union {double d; unsigned long l;} x;
        !            16:     x.d = 2.;
        !            17:     if (x.l==(1UL<<62)) printf("-\n");
        !            18:     else
        !            19:       printf("NOT IEEE (64 bit)\n");
        !            20:   }
1.1       noro       21: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>