1 /* { dg-do assemble } */
2 /* { dg-options "-O2 --save-temps -ftree-vectorize" } */
4 #pragma GCC target "+nosve"
6 /* Each function uses the correspoding 'CLASS' in
7 Marco CHECK (aarch64_simd_valid_immediate). */
12 for (int i
= 0; i
< 1024; i
++)
19 for (int i
= 0; i
< 1024; i
++)
26 for (int i
= 0; i
< 1024; i
++)
33 for (int i
= 0; i
< 1024; i
++)
34 a
[i
] &= ~(0x12000000);
40 for (int i
= 0; i
< 1024; i
++)
48 for (int i
= 0; i
< 1024; i
++)
53 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.4s, #171" } } */
54 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.4s, #205, lsl #8" } } */
55 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.4s, #239, lsl #16" } } */
56 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.4s, #18, lsl #24" } } */
57 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.8h, #52" } } */
58 /* { dg-final { scan-assembler "bic\\tv\[0-9\]+.8h, #86, lsl #8" } } */