1 /* Disabling epilogues until we find a better way to deal with scans. */
2 /* { dg-additional-options "--param vect-epilogues-nomask=0 -fdump-tree-optimized-details-blocks" } */
3 /* { dg-do compile } */
4 /* { dg-require-effective-target vect_int } */
10 bar (const unsigned int x
[INNER
][2], unsigned int sum
)
14 for (i
= 0; i
< INNER
; i
++)
15 sum
+= x
[i
][0] * x
[i
][0] + x
[i
][1] * x
[i
][1];
19 unsigned int foo (const unsigned int x
[OUTER
][INNER
][2])
25 for (i
= 0; i
< OUTER
; i
++)
26 sum
= bar (x
[i
], sum
);
30 /* { dg-final { scan-tree-dump-times "Detected interleaving load of size 2" 1 "vect" } } */
31 /* { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } */