1  /* { dg-do run } */
       2  /* { dg-require-effective-target s390_vxe2 } */
       3  /* { dg-options "-O3 -mzarch -march=arch13 -mzvector --save-temps" } */
       4  
       5  #include <vecintrin.h>
       6  
       7  void __attribute__((noinline,noclone))
       8  vstrs1 ()
       9  {
      10    int cc;
      11    vector signed char haystack = { 'h', 'o', 'l', 'a', 'h', 'i', 'h', 'o',
      12  				  'h', 'i', 'h', 'o' };
      13    vector signed char needle = { 'h', 'i', 'h', 'o' };
      14    vector unsigned char length = { 0 };
      15    length[7] = 4;
      16  
      17    vector unsigned char result = vec_search_string_cc (haystack, needle,
      18  						      length, &cc);
      19  
      20    if (result[7] != 4)
      21      __builtin_abort ();
      22  
      23    /* CC2 indicates a full match.  */
      24    if (cc != 2)
      25      __builtin_abort ();
      26  }
      27  
      28  int
      29  main ()
      30  {
      31    vstrs1 ();
      32  
      33    return 0;
      34  }
      35  
      36  /* { dg-final { scan-assembler-times "vstrsb\t" 1 } } */