1 /* PR tree-optimization/70317 */
2 /* { dg-do compile } */
3 /* { dg-skip-if "No NaN support" { spu*-*-* vax*-*-* pdp11*-*-* } } */
4 /* { dg-options "-O2 -fdump-tree-optimized" } */
5 /* { dg-additional-options "-fno-common" { target hppa*-*-hpux* } } */
6 
7 typedef double V __attribute__((vector_size (256)));
8 typedef __typeof ((V) {} < (V) {}) T;
9 T a, b;
10 
11 __attribute__((noinline, noclone, optimize ("finite-math-only"))) void
foo(V * x)12 foo (V *x)
13 {
14   V z = *x;
15   a = z <= z;
16 }
17 
18 /* { dg-final { scan-tree-dump "a\[^\n\r]*= . -1, -1," "optimized" } } */
19 
20 __attribute__((noinline, noclone, optimize ("no-finite-math-only"))) void
bar(V * x)21 bar (V *x)
22 {
23   V z = *x;
24   b = z <= z;
25 }
26 
27 /* { dg-final { scan-tree-dump-not "b\[^\n\r]*= . -1, -1," "optimized" } } */
28