1 /* { dg-do compile { target powerpc*-*-* } } */
2 /* { dg-require-effective-target powerpc_p8vector_ok } */
3 /* { dg-options "-mpower8-vector -mvsx" } */
7 vector
bool int *vecubi
;
8 vector
bool long long *vecublli
;
9 vector
signed int *vecsi
;
10 vector
signed long long int *vecslli
;
15 /* use of ‘long long’ in AltiVec types requires -mvsx */
16 /* __builtin_altivec_vupkhsw and __builtin_altivec_vupklsw
17 requires the -mpower8-vector option */
18 *vecublli
++ = vec_unpackh(vecubi
[0]);
19 *vecublli
++ = vec_unpackl(vecubi
[0]);
20 *vecslli
++ = vec_unpackh(vecsi
[0]);
21 *vecslli
++ = vec_unpackl(vecsi
[0]);
31 /* { dg-final { scan-assembler-times "vupklsw" 2 } } */
32 /* { dg-final { scan-assembler-times "vupkhsw" 2 } } */