Implement C _FloatN, _FloatNx types.
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / pr26587.c
blobad5d60f3a8d883986bc0936cf3ad781bdabb80b6
1 /* { dg-do run } */
2 /* { dg-require-effective-target int32plus } */
4 extern void abort(void);
5 typedef unsigned int BF_word;
6 typedef BF_word BF_key[16 + 2];
7 static struct {
8 BF_key P;
9 } BF_current;
10 int main(void)
12 BF_word L;
13 BF_word tmp4, *ptr;
14 BF_word i;
15 for (i = 0; i < 16 + 2; i++)
16 BF_current.P[i] = i * 0x98765432;
17 L = 0;
18 ptr = BF_current.P;
19 do {
20 ptr += 2;
21 L ^= BF_current.P[0];
22 tmp4 = L >> 24;
23 L = tmp4 ^ BF_current.P[16 + 1];
24 *(ptr - 2) = L;
25 } while (ptr < &BF_current.P[16 + 2]);
26 if (L != 0x1fdb9752)
27 abort();
28 return 0;