1  /* { dg-do compile { target { powerpc*-*-* } } } */
       2  /* { dg-skip-if "" { powerpc*-*-darwin* } } */
       3  /* { dg-require-effective-target powerpc_vsx_ok } */
       4  /* { dg-options "-O3 -mdejagnu-cpu=power7 -ffast-math" } */
       5  /* { dg-final { scan-assembler-times {\mfctiwz\M|\mxscvdpsxws\M}  2 } } */
       6  /* { dg-final { scan-assembler-times {\mfctiwuz\M|\mxscvdpuxws\M} 2 } } */
       7  /* { dg-final { scan-assembler-times {\mfctidz\M|\mxscvdpsxds\M}  2 } } */
       8  /* { dg-final { scan-assembler-times {\mfctiduz\M|\mxscvdpuxds\M} 2 } } */
       9  
      10  void float_to_int  (int *dest, float  src) { *dest = (int) src; }
      11  void double_to_int (int *dest, double src) { *dest = (int) src; }
      12  
      13  void float_to_uint  (int *dest, float  src) { *dest = (unsigned int) src; }
      14  void double_to_uint (int *dest, double src) { *dest = (unsigned int) src; }
      15  
      16  void float_to_llong  (long long *dest, float  src) { *dest = (long long) src; }
      17  void double_to_llong (long long *dest, double src) { *dest = (long long) src; }
      18  
      19  void float_to_ullong  (unsigned long long *dest, float  src) { *dest = (unsigned long long) src; }
      20  void double_to_ullong (unsigned long long *dest, double src) { *dest = (unsigned long long) src; }