1  /* { dg-do compile } */
       2  /* { dg-options "-fopenmp -O2" } */
       3  /* { dg-additional-options "-mavx512f" { target { x86_64-*-* i?86-*-* } } } */
       4  
       5  #define N 1024
       6  int a[N], b[N], c[N];
       7  
       8  void
       9  f1 (void)
      10  {
      11    int i;
      12    #pragma omp parallel for simd schedule (simd:static)
      13    for (i = 0; i < N; i++)
      14      a[i] = b[i] + c[i];
      15  }
      16  
      17  void
      18  f2 (void)
      19  {
      20    int i;
      21    #pragma omp parallel for simd schedule (simd: static, 7)
      22    for (i = 0; i < N; i++)
      23      a[i] = b[i] + c[i];
      24  }
      25  
      26  void
      27  f3 (void)
      28  {
      29    int i;
      30    #pragma omp parallel for simd schedule (simd : dynamic, 7)
      31    for (i = 0; i < N; i++)
      32      a[i] = b[i] + c[i];
      33  }
      34  
      35  void
      36  f4 (void)
      37  {
      38    int i;
      39    #pragma omp parallel for simd schedule ( simd:runtime)
      40    for (i = 0; i < N; i++)
      41      a[i] = b[i] + c[i];
      42  }
      43  
      44  void
      45  f5 (void)
      46  {
      47    int i;
      48    #pragma omp parallel for simd schedule (simd:auto)
      49    for (i = 0; i < N; i++)
      50      a[i] = b[i] + c[i];
      51  }