1 /* { dg-require-effective-target vect_int } */
10 /* Vectorization of reduction using loop-aware SLP. */
12 __attribute__ ((noinline
))
13 int main1 (int n
, int res0
, int res1
, int res2
, int res3
, int res4
, int res5
, int res6
, int res7
)
16 unsigned int max0
= 5, max1
= 10, max2
= 20, max3
= 30, max4
= 2, max5
= 13, max6
= 7, max7
= 313;
18 for (i
= 0; i
< n
; i
++) {
19 max2
= max2
< uc
[8*i
+2] ? uc
[8*i
+2] : max2
;
20 max3
= max3
< uc
[8*i
+3] ? uc
[8*i
+3] : max3
;
21 max1
= max1
< uc
[8*i
+1] ? uc
[8*i
+1] : max1
;
22 max7
= max7
< uc
[8*i
+7] ? uc
[8*i
+7] : max7
;
23 max6
= max6
< uc
[8*i
+6] ? uc
[8*i
+6] : max6
;
24 max0
= max0
< uc
[8*i
] ? uc
[8*i
] : max0
;
25 max4
= max4
< uc
[8*i
+4] ? uc
[8*i
+4] : max4
;
26 max5
= max5
< uc
[8*i
+5] ? uc
[8*i
+5] : max5
;
49 for (i
= 0; i
< N
; i
++)
52 __asm__
volatile ("");
55 main1 (N
/8, 123, 124, 125, 126, 127, 128, 129, 313);
59 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail vect_no_int_max } } } */
60 /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { xfail vect_no_int_max } } } */
61 /* { dg-final { cleanup-tree-dump "vect" } } */