simd-13.c 408 B

1234567891011121314151617
  1. /* { dg-do run } */
  2. /* { dg-additional-options "-msse2" { target sse2_runtime } } */
  3. /* { dg-additional-options "-mavx" { target avx_runtime } } */
  4. int
  5. main ()
  6. {
  7. int k = 0, i, s = 0;
  8. #pragma omp parallel for simd linear(k : 3) reduction(+: s) schedule (static, 16)
  9. for (i = 0; i < 128; i++)
  10. {
  11. k = k + 3;
  12. s = s + k;
  13. }
  14. if (s != 128 * 129 / 2 * 3) __builtin_abort ();
  15. return 0;
  16. }