(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
powerpc/
vec-extract-sint128-1.c
       1  /* Test to verify that the vec_extract from a vector of
       2     signed __int128s remains signed.  */
       3  /* { dg-do run { target int128 } } */
       4  /* { dg-options "-ansi -mdejagnu-cpu=power8 " } */
       5  /* { dg-require-effective-target p8vector_hw } */
       6  
       7  #include <altivec.h>
       8  #include <stdio.h>
       9  #include <stdlib.h>
      10  
      11  int test1(signed __int128 st) {
      12  
      13    vector signed __int128 v = vec_splats(st);
      14  
      15    if (vec_extract (v, 0) > st)
      16      abort();
      17    return 0;
      18  }
      19  
      20  int main()
      21  {
      22    test1 (((__int128) 0xf600000000000000LL) << 64);
      23    test1 (((__int128) 0x7600000000000000LL) << 64);
      24    test1 (((__int128) 0x0600000000000000LL) << 64);
      25    return 0;
      26  }