1 // PR target/85572
2 // { dg-do compile { target i?86-*-* x86_64-*-* } }
3 // { dg-options "-O2 -msse2 -mno-sse3" }
4 // { dg-final { scan-assembler-times {\mpxor\M} 2 } }
5 // { dg-final { scan-assembler-times {\mpsubq\M} 2 } }
6 // { dg-final { scan-assembler-times {\mpsrlq\M} 1 } }
7 
8 typedef long long V __attribute__((vector_size (16)));
9 
10 V
foo(V x)11 foo (V x)
12 {
13   return x < 0 ? -x : x;
14 }
15