1 /* { dg-require-effective-target vect_int } */
2 /* { dg-additional-options "-fno-ipa-icf" } */
8 __attribute__ ((noinline
)) void
9 foo (int *__restrict a
,
15 for (i
= 0; i
< n
; i
++)
18 for (i
= 0; i
< n
; i
++)
19 if (a
[i
] != b
[i
] * 2333)
23 __attribute__ ((noinline
)) void
24 bar (int *__restrict a
,
30 for (i
= 0; i
< n
; i
++)
31 a
[i
] = b
[i
] * (short) 2333;
33 for (i
= 0; i
< n
; i
++)
34 if (a
[i
] != b
[i
] * (short) 2333)
46 for (i
= 0; i
< N
; i
++)
50 __asm__
volatile ("");
58 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target vect_widen_mult_hi_to_si } } } */
59 /* { dg-final { scan-tree-dump-times {vect_recog_widen_mult_pattern: detected:[^\n]* 2333} 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */
60 /* { dg-final { scan-tree-dump-times {widen_mult pattern recognized:[^\n]* 2333} 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */