/* { dg-do run } */ | |
float a[8], b[4]; | |
void __attribute__((noipa)) | |
foo () | |
{ | |
float a0 = a[0]; | |
float a1 = a[1]; | |
float a2 = a[2]; | |
float a3 = a[3]; | |
float a4 = a[4]; | |
float a5 = a[5]; | |
float a6 = a[6]; | |
float a7 = a[7]; | |
b[0] = a1 - a5; | |
b[1] = a0 + a4; | |
b[2] = a3 - a7; | |
b[3] = a2 + a6; | |
} | |
int main() | |
{ | |
a[0] = 1.; | |
a[1] = 2.; | |
a[2] = 3.; | |
a[3] = 4.; | |
a[4] = 5.; | |
a[5] = 6.; | |
a[6] = 7.; | |
a[7] = 8.; | |
foo (); | |
if (b[0] != -4 || b[1] != 6 || b[2] != -4 || b[3] != 10) | |
__builtin_abort (); | |
return 0; | |
} |