compare-fp-3.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 98 行

C
98
字号
/* Copyright (C) 2004 Free Software Foundation.   Test for composite comparison always true/false optimization.   Written by Paolo Bonzini, 26th May 2004.  */extern void link_error0 ();extern void link_error1 ();voidtest1 (float x, float y){  if ((x==y) && (x!=y))    link_error0();}voidtest2 (float x, float y){  if ((x<y) && (x>y))    link_error0();}voidtest3 (float x, float y){  if ((x<y) && (y<x))    link_error0();}void test4 (float x, float y){  if ((x==y) || (x!=y))    {    }  else    link_error1 ();}voidtest5 (float x, float y){  if (__builtin_isunordered (x, y) || (x>=y) || (x<y))    {    }  else    link_error1 ();}voidtest6 (float x, float y){  if (__builtin_isunordered (y, x) || (x<=y) || (y<x))    {    }  else    link_error1 ();}voidtest7 (float x, float y){  if (__builtin_isunordered (x, y) || !__builtin_isunordered (x, y))    {    }  else    link_error1 ();}voidall_tests (float x, float y){  test1 (x, y);  test2 (x, y);  test3 (x, y);  test4 (x, y);  test5 (x, y);  test6 (x, y);  test7 (x, y);}intmain (){  all_tests (0, 0);  all_tests (1, 2);  all_tests (4, 3);  return 0;}#ifndef __OPTIMIZE__void link_error0() {}void link_error1() {}#endif /* ! __OPTIMIZE__ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?