1 /* { dg-require-effective-target vect_int } */
2 /* { dg-additional-options "-fno-early-inlining" } */
9 short X
[N
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
10 short Y
[N
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
13 /* short->int widening-mult */
18 for (i
=0; i
<len
/2; i
++) {
19 result
[2*i
] = X
[2*i
] * Y
[2*i
];
20 result
[2*i
+1] = X
[2*i
+1] * Y
[2*i
+1];
33 __asm__
volatile ("");
40 if (result
[i
] != X
[i
] * Y
[i
])
47 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_widen_mult_hi_to_si } } }*/
48 /* { dg-final { scan-tree-dump "vectorizing stmts using SLP" "vect" { target vect_widen_mult_hi_to_si } } } */