1  /* Verify that overloaded built-ins for vec_perm with double
       2     inputs produce the right code.  */
       3  
       4  /* { dg-do compile } */
       5  // vector double needs -mvsx.
       6  /* { dg-require-effective-target powerpc_vsx_ok } */
       7  /* { dg-options "-mvsx -O2" } */
       8  
       9  #include <altivec.h>
      10  
      11  vector double
      12  testd (vector double vd2, vector double vd3, vector unsigned char vuc)
      13  {
      14    return vec_perm (vd2, vd3, vuc);
      15  }
      16  
      17  /* { dg-final { scan-assembler-times {\m(?:v|xx)permr?\M} 1 } } */