(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
s390/
zvector/
vec-reve-load-byte.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O3 -mzarch -march=arch13 -mzvector" } */
       3  
       4  /* The vector byte element reversal is actually implemented with a 128
       5     bit bswap.  */
       6  
       7  #include <vecintrin.h>
       8  
       9  vector signed char
      10  test (vector signed char x)
      11  {
      12    return vec_reve (x);
      13  }
      14  
      15  /* { dg-final { scan-assembler-times "vperm\t" 1 } } */
      16  
      17  
      18  vector signed char
      19  test2 (vector signed char *x)
      20  {
      21    return vec_reve (*x);
      22  }
      23  
      24  vector signed char
      25  test3 (signed char *x)
      26  {
      27    return vec_reve (vec_xl (0, x));
      28  }
      29  
      30  /* { dg-final { scan-assembler-times "vlbrq\t" 2 } } */