1 /* PR tree-optimization/79390 */
2 /* { dg-do compile { target lp64 } } */
3 /* { dg-options "-O2 -march=haswell -mtune=haswell -mfpmath=sse" } */
4 /* Make sure we emit a conditional move in this loop. */
5
6 extern double A[32];
7
8 int
foo(void)9 foo (void)
10 {
11 double t = A[0];
12 int jp = 0;
13 int i;
14
15 for (i = 0; i < 32; i++)
16 {
17 double ab = A[i];
18 if (ab > t)
19 {
20 jp = i;
21 t = ab;
22 }
23 }
24
25 return jp;
26 }
27
28 /* { dg-final { scan-assembler "\[ \\t\]cmov\[a-z.]+\[ \\t\]" } } */
29