PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / ieee / 20010226-1.c
blobec292aca3d4f2e1d6b7ce322b011125cc11ae6c7
1 #include <float.h>
3 long double dfrom = 1.1L;
4 long double m1;
5 long double m2;
6 unsigned long mant_long;
8 int main()
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;
16 m1 = dfrom / 2.0L;
17 m2 = m1 * 4294967296.0L;
18 mant_long = ((unsigned long) m2) & 0xffffffff;
20 if (mant_long == 0x8ccccccc)
21 return 0;
22 else
23 abort();