2 /* { dg-do compile { target { ! ia32 } } } */
3 /* { dg-options "-O3 -ffast-math -msse2 -mno-recip" } */
6 float r
[2], a
[2], b
[2];
11 for (int i
= 0; i
< 2; i
++)
15 /* { dg-final { scan-assembler "\tv?addps" } } */
20 for (int i
= 0; i
< 2; i
++)
24 /* { dg-final { scan-assembler "\tv?subps" } } */
29 for (int i
= 0; i
< 2; i
++)
33 /* { dg-final { scan-assembler "\tv?mulps" } } */
38 for (int i
= 0; i
< 2; i
++)
42 /* { dg-final { scan-assembler "\tv?divps" } } */
47 for (int i
= 0; i
< 2; i
++)
48 r
[i
] = a
[i
] < b
[i
] ? a
[i
] : b
[i
];
51 /* { dg-final { scan-assembler "\tv?minps" } } */
56 for (int i
= 0; i
< 2; i
++)
57 r
[i
] = a
[i
] > b
[i
] ? a
[i
] : b
[i
];
60 /* { dg-final { scan-assembler "\tv?maxps" } } */
67 for (int i
= 0; i
< 2; i
++)
71 /* { dg-final { scan-assembler "\tv?sqrtps" } } */