1  /* { dg-do compile } */
       2  /* { dg-options "-mssse3 -O2 -ftree-vectorize" } */
       3  
       4  #define N 1024
       5  
       6  short a[N], b[N], c[N];
       7  
       8  void foo (void)
       9  {
      10    int i;
      11  
      12    for (i = 0; i < N; i++)
      13      a[i] = ((((int) b[i] * (int) c[i]) >> 14) + 1) >> 1;
      14  }
      15  
      16  /* { dg-final { scan-assembler "pmulhrsw" } } */