1  /* { dg-do compile } */
       2  /* { dg-options "-O3 -mzarch -march=z13 -mzvector" } */
       3  
       4  #include <vecintrin.h>
       5  
       6  vector signed char v16qi;
       7  vector short       v8hi;
       8  vector int         v4si;
       9  vector long long   v2di;
      10  
      11  vector unsigned char      uv16qi;
      12  vector unsigned short     uv8hi;
      13  vector unsigned int       uv4si;
      14  vector unsigned long long uv2di;
      15  
      16  int
      17  foo ()
      18  {
      19    v16qi  = vec_splats ((signed char)0x77);
      20    uv16qi = vec_splats ((unsigned char)0x77);
      21  
      22    v8hi  = vec_splats ((short int)0x7f0f);
      23    uv8hi = vec_splats ((unsigned short int)0x7f0f);
      24  
      25    v4si  = vec_splats ((int)0x7f0f);
      26    uv4si = vec_splats ((unsigned int)0x7f0f);
      27  
      28    v2di  = vec_splats ((long long)0x7f0f);
      29    uv2di = vec_splats ((unsigned long long)0x7f0f);
      30  }
      31  
      32  /* { dg-final { scan-assembler-times "vrepib\t%v.*,119" 1 } } */
      33  /* { dg-final { scan-assembler-times "vrepib\t%v.*,119" 1 } } */
      34  
      35  /* { dg-final { scan-assembler-times "vrepih\t%v.*,32527" 1 } } */
      36  /* { dg-final { scan-assembler-times "vrepih\t%v.*,32527" 1 } } */
      37  
      38  /* { dg-final { scan-assembler-times "vrepif\t%v.*,32527" 1 } } */
      39  /* { dg-final { scan-assembler-times "vrepif\t%v.*,32527" 1 } } */
      40  
      41  /* { dg-final { scan-assembler-times "vrepig\t%v.*,32527" 1 } } */
      42  /* { dg-final { scan-assembler-times "vrepig\t%v.*,32527" 1 } } */