(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
s390/
zvector/
get-element-bswap-2.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O3 -mzarch -march=arch13 -mzvector -fno-asynchronous-unwind-tables -dp" } */
       3  
       4  #include <vecintrin.h>
       5  
       6  void
       7  vstebrh (signed short *a, vector signed short b)
       8  {
       9    *a = __builtin_bswap16 (b[1]);
      10  }
      11  
      12  /* { dg-final { scan-assembler-times "vstebrh.*\n\tvstebrh.*vec_extract_bswap_elemv8hi" 1 } } */
      13  
      14  void
      15  vstebrf (int *a, vector int b)
      16  {
      17    *a = __builtin_bswap32 (b[1]);
      18  }
      19  
      20  /* { dg-final { scan-assembler-times "vstebrf.*\n\tvstebrf.*vec_extract_bswap_elemv4si" 1 } } */
      21  
      22  void
      23  vstebrg (long long *a, vector long long b)
      24  {
      25    *a = __builtin_bswap64 (b[1]);
      26  }
      27  
      28  /* { dg-final { scan-assembler-times "vstebrg.*\n\tvstebrg.*vec_extract_bswap_elemv2di" 1 } } */