OSDN Git Service

* gcc.c-torture/execute/960321-1.x: Remove.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / ieee / 20010226-1.c
1 #include <float.h>
2
3 long double dfrom = 1.1L;
4 long double m1;
5 long double m2;
6 unsigned long mant_long;
7
8 int main()
9 {
10   /* Some targets don't support a conforming long double type.  This is
11      common with very small parts which set long double == float.   Look
12      to see if the type has at least 32 bits of precision.  */
13   if (LDBL_EPSILON > 0x1p-31L)
14     return 0;
15
16   m1 = dfrom / 2.0L;
17   m2 = m1 * 4294967296.0L;
18   mant_long = ((unsigned long) m2) & 0xffffffff;
19
20   if (mant_long == 0x8ccccccc)
21     return 0;
22   else
23     abort();
24 }