FSF GCC merge 02/23/03
[official-gcc.git] / gcc / testsuite / gcc.dg / 20020201-2.c
blob2a13c8d83caa32ab6483406974ad32be3a9a3413
1 /* This testcase caused ICE because gcc was not able to add instructions
2 on edge from ENTRY block successor to itself. */
3 /* { dg-do compile } */
4 /* { dg-options "-O3 -fssa" } */
6 struct A { int a1; int a2; };
7 struct B { long int b[32]; };
9 extern int bar (struct B *, struct A *);
11 int
12 foo (struct B x)
14 struct A a, b;
15 struct B c;
16 int d;
18 while (1)
20 a.a1 = 0;
21 a.a2 = 0;
22 b = a;
23 c = x;
24 d = bar (&c, &b);
25 if (d >= 0)
26 return d;
29 return 0;