/* { dg-do run } */ | |
/* { dg-additional-options "-ftree-slp-vectorize" } */ | |
extern void abort (void); | |
static struct X { void *a; void *b; } a, b; | |
static struct X *p; | |
void __attribute__((noinline)) | |
foo (void) | |
{ | |
void *tem = a.b; | |
p->b = (void *)0; | |
b.b = tem; | |
b.a = a.a; | |
} | |
int main() | |
{ | |
p = &a; | |
a.b = &a; | |
foo (); | |
if (b.b != &a) | |
abort (); | |
return 0; | |
} |