40 lines
446 B
C
40 lines
446 B
C
/* This used to abort due to a loop bug on s390*. */
|
|
|
|
/* { dg-do run } */
|
|
/* { dg-options "-O2" } */
|
|
/* { dg-options "-O2 -fPIC" { target s390*-*-* } } */
|
|
|
|
extern void abort (void);
|
|
|
|
int count = 0;
|
|
char *str;
|
|
|
|
void test (int flag)
|
|
{
|
|
char *p;
|
|
|
|
for (;;)
|
|
{
|
|
if (count > 5)
|
|
return;
|
|
|
|
p = "test";
|
|
|
|
if (flag)
|
|
count++;
|
|
|
|
str = p;
|
|
}
|
|
}
|
|
|
|
int main (void)
|
|
{
|
|
test (1);
|
|
|
|
if (str[0] != 't')
|
|
abort ();
|
|
|
|
return 0;
|
|
}
|
|
|