1 /* { dg-do compile { target { powerpc*-*-* } } } */
2 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
3 /* { dg-require-effective-target powerpc_p9vector_ok } */
4 /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
5 /* { dg-options "-mcpu=power9 -O2" } */
10 count_trailing_zeros_v16qi_1s (vector
signed char a
)
16 count_trailing_zeros_v16qi_2s (vector
signed char a
)
22 count_trailing_zeros_v16qi_1u (vector
unsigned char a
)
28 count_trailing_zeros_v16qi_2u (vector
unsigned char a
)
34 count_trailing_zeros_v8hi_1s (vector
short a
)
40 count_trailing_zeros_v8hi_2s (vector
short a
)
46 count_trailing_zeros_v8hi_1u (vector
unsigned short a
)
52 count_trailing_zeros_v8hi_2u (vector
unsigned short a
)
58 count_trailing_zeros_v4si_1s (vector
int a
)
64 count_trailing_zeros_v4si_2s (vector
int a
)
70 count_trailing_zeros_v4si_1u (vector
unsigned int a
)
76 count_trailing_zeros_v4si_2u (vector
unsigned int a
)
82 count_trailing_zeros_v2di_1s (vector
long long a
)
88 count_trailing_zeros_v2di_2s (vector
long long a
)
93 vector
unsigned long long
94 count_trailing_zeros_v2di_1u (vector
unsigned long long a
)
99 vector
unsigned long long
100 count_trailing_zeros_v2di_2u (vector
unsigned long long a
)
102 return vec_vctzd (a
);
105 /* { dg-final { scan-assembler "vctzb" } } */
106 /* { dg-final { scan-assembler "vctzd" } } */
107 /* { dg-final { scan-assembler "vctzh" } } */
108 /* { dg-final { scan-assembler "vctzw" } } */
109 /* { dg-final { scan-assembler-not "cnttzd" } } */
110 /* { dg-final { scan-assembler-not "cnttzw" } } */