blob: 61af608514018b11d014fb1c0607e9d6da6d95ac [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-O -fdump-tree-optimized" } */
/* { dg-skip-if "using short-double" { avr-*-* } } */
int f(double aaa, double bbb){
int xa = !__builtin_isunordered(aaa, aaa);
int xb = !__builtin_isunordered(bbb, bbb);
return xa & xb;
}
int g(double aaa, double bbb){
int xa = !__builtin_isunordered(aaa, bbb);
int xb = !__builtin_isunordered(bbb, bbb);
return xa & xb;
}
int h(double ccc, float ddd){
int xc = !__builtin_isunordered(ccc, ccc);
int xd = !__builtin_isunordered(ddd, ddd);
return xc & xd;
}
/* { dg-final { scan-tree-dump-not "aaa\[^\n\r\]* ord aaa" "optimized" } } */
/* { dg-final { scan-tree-dump-not "bbb\[^\n\r\]* ord bbb" "optimized" } } */
/* { dg-final { scan-tree-dump-times "aaa\[^\n\r\]* ord bbb" 2 "optimized" } } */
/* { dg-final { scan-tree-dump-not "ccc\[^\n\r\]* ord ddd" "optimized" } } */