1  /* { dg-skip-if "" { powerpc*-*-darwin* } } */
       2  /* { dg-require-effective-target powerpc_vsx_ok } */
       3  /* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
       4  
       5  #include "harness.h"
       6  
       7  static void test()
       8  {
       9    /* Input vectors.  */
      10    vector unsigned int vui = {0,1,2,3};
      11    vector signed int vsi = {-2,-1,0,1};
      12    vector float vf = {-2.0,-1.0,0.0,1.0};
      13  
      14    /* Result vectors.  */
      15    vector unsigned int vuir;
      16    vector signed int vsir;
      17    vector float vfr;
      18  
      19    /* Expected result vectors.  */
      20    vector unsigned int vuier = {2,2,2,2};
      21    vector signed int vsier = {1,1,1,1};
      22    vector float vfer = {-1.0,-1.0,-1.0,-1.0};
      23  
      24    vuir = vec_splat (vui, 2);
      25    vsir = vec_splat (vsi, 3);
      26    vfr  = vec_splat (vf,  1);
      27  
      28    check (vec_all_eq (vuir, vuier), "vui");
      29    check (vec_all_eq (vsir, vsier), "vsi");
      30    check (vec_all_eq (vfr,  vfer ), "vf");
      31  }