1 /* PR rtl-optimization/79901 */
2 /* { dg-do compile } */
3 /* { dg-options "-O3 -mavx512f -fno-ssa-phiopt" } */
4
5 unsigned int
foo(const unsigned long long x)6 foo (const unsigned long long x)
7 {
8 if (x < 0)
9 return 0;
10 else if ( x > ~0U)
11 return ~0U;
12 else
13 return (unsigned int) x;
14 }
15
16 void
bar(unsigned x,unsigned int * y,unsigned int z)17 bar (unsigned x, unsigned int *y, unsigned int z)
18 {
19 unsigned i;
20 for (i = 0; i < x; i++)
21 y[i] = foo (y[i] * (unsigned long long) z);
22 }
23