/* { dg-do run } */ | |
#include "tree-vect.h" | |
long a[1024]; | |
long b[1024]; | |
void __attribute__((noipa)) foo () | |
{ | |
for (int i = 0; i < 256; ++i) | |
{ | |
a[3*i] = b[1023 - 3*i - 2]; | |
a[3*i + 1] = b[1023 - 3*i - 1]; | |
a[3*i + 2] = b[1023 - 3*i]; | |
} | |
} | |
int main() | |
{ | |
for (int i = 0; i < 1024; ++i) | |
b[i] = i; | |
foo (); | |
for (int i = 0; i < 256; ++i) | |
if (a[3*i] != 1023 - 3*i - 2 | |
|| a[3*i+1] != 1023 - 3*i - 1 | |
|| a[3*i+2] != 1023 - 3*i) | |
__builtin_abort (); | |
return 0; | |
} |