gcc/ 2015-01-11 Yvan Roux <yvan.roux@linaro.org>
[platform/upstream/gcc49.git] / gcc / testsuite / gcc.target / aarch64 / vbslq_u64_2.c
1 /* Test vbslq_u64 can be folded.  */
2 /* { dg-do assemble } */
3 /* { dg-options "--save-temps -O3" } */
4 #include <arm_neon.h>
5
6 /* Folds to BIC.  */
7
8 int32x4_t
9 half_fold_int (uint32x4_t mask)
10 {
11   int32x4_t a = {0, 0, 0, 0};
12   int32x4_t b = {2, 4, 8, 16};
13   return vbslq_s32 (mask, a, b);
14 }
15
16 /* { dg-final { scan-assembler-not "bsl\\tv" } } */
17 /* { dg-final { scan-assembler-not "bit\\tv" } } */
18 /* { dg-final { scan-assembler-not "bif\\tv" } } */
19 /* { dg-final { scan-assembler "bic\\tv" } } */
20
21 /* { dg-final { cleanup-saved-temps } } */
22