1 /* { dg-do compile } */
2 /* { dg-options "-mno-mips16 -mfp64 -mhard-float -mmsa" } */
3 /* { dg-skip-if "code quality test" { *-*-* }  { "-O0" } { "" } } */
4 
5 typedef long long v2i64 __attribute__ ((vector_size(16)));
6 
7 /* Test MSA AND.d optimization: generate BCLRI.d instead, for immediate const
8    vector operand with only one bit clear.  */
9 
10 void
and_d_msa(v2i64 * vx,v2i64 * vy)11 and_d_msa (v2i64 *vx, v2i64 *vy)
12 {
13   v2i64 and_vec = {0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFF};
14   *vy = (*vx) & and_vec;
15 }
16 /* { dg-final { scan-assembler "bclri.d" } }  */
17