1 /* { dg-options "-O2 -ftree-vectorize" } */
5 #define TEST_OP(NAME, TYPE, OP) \
7 NAME##_##TYPE (TYPE *restrict a, TYPE *restrict b, int n) \
9 for (int i = 0; i < n; ++i) \
13 #define TEST_TYPE(TYPE) \
14 TEST_OP (shl, TYPE, << 6) \
15 TEST_OP (shr, TYPE, >> 6) \
16 TEST_OP (mult, TYPE, * 0x2b)
27 /* { dg-final { scan-assembler-times {\tlsl\t} 8 } } */
28 /* { dg-final { scan-assembler-times {\tlsr\t} 4 } } */
29 /* { dg-final { scan-assembler-times {\tasr\t} 4 } } */
30 /* { dg-final { scan-assembler-times {\tmul\t} 8 } } */
31 /* { dg-final { scan-assembler-not {\tptrue\t} } } */