1 /* Disabling epilogues until we find a better way to deal with scans. */
2 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
3 /* { dg-require-effective-target vect_int } */
4 /* { dg-additional-options "-fdump-tree-optimized-details-blocks" } */
11 __attribute__ ((noinline
)) int
79 for (i
= 0; i
< N
; i
++)
81 ia
[i
] = (ib
[i
] || ic
[i
]);
86 for (i
= 0; i
<N
; i
++)
88 if (ia
[i
] != (ib
[i
] || ic
[i
]))
94 for (i
= 0; i
< N
; i
++)
96 ca
[i
] = (cb
[i
] || cc
[i
]);
101 for (i
= 0; i
<N
; i
++)
103 if (ca
[i
] != (cb
[i
] || cc
[i
]))
109 for (i
= 0; i
< N
; i
++)
111 sa
[i
] = (sb
[i
] || sc
[i
]);
116 for (i
= 0; i
<N
; i
++)
118 if (sa
[i
] != (sb
[i
] || sc
[i
]))
131 /* The short-cutting || is if-converted using COND_EXPRs rather than
133 /* { dg-final { scan-tree-dump-times "vectorized 3 loops" 1 "vect" { xfail { ! vect_condition } } } } */
134 /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 0 "vect" { xfail { ! vect_align_stack_vars } } } } */
135 /* { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } */