1  /* { dg-do compile } */
       2  /* { dg-options "-mavx2 -mxop -O" } */
       3  
       4  typedef char __attribute__((__vector_size__ (16))) V;
       5  typedef unsigned char __attribute__((__vector_size__ (16))) UV;
       6  V v;
       7  UV uv;
       8  
       9  V
      10  foo (long c)
      11  {
      12    return v << c;
      13  }
      14  
      15  V
      16  foo1 (long c)
      17  {
      18    return v >> c;
      19  }
      20  
      21  UV
      22  foo2 (unsigned long uc)
      23  {
      24    return uv >> uc;
      25  }