1 /* PR 17930 */ 2 /* { dg-do run } */ 3 /* { dg-options "-O1 -msse2 -mfpmath=sse -mno-accumulate-outgoing-args -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" } */ 4 /* { dg-options "-O1 -msse2 -mfpmath=sse -fno-omit-frame-pointer" { target *-*-mingw* *-*-cygwin* } } */ 5 /* { dg-require-effective-target sse2 } */ 6 7 #include "sse2-check.h" 8 9 typedef _Complex double complex_16; 10 11 void __attribute__((noinline)) test(complex_16 a[5][5])12test (complex_16 a[5][5]) 13 { 14 int i, j, k; 15 complex_16 x; 16 17 for (j = 0; j < 5; j++) 18 for (i = 0; i < 5; i++) 19 { 20 for (k = 0; k < j - 1; ++k) 21 x = a[k][i] * ~a[k][j]; 22 a[j][i] = x; 23 } 24 } 25 26 static void sse2_test(void)27sse2_test (void) 28 { 29 static complex_16 work[5][5]; 30 31 test (work); 32 } 33