unsafe-fp-assoc-1.c

来自「用于进行gcc测试」· C语言 代码 · 共 38 行

C
38
字号
extern void abort();typedef union {       struct {  unsigned int hi;  unsigned int lo; } i;       double d;} hexdouble;static const double twoTo52 = 0x1.0p+52;void func ( double x ){      hexdouble argument;      register double y, z;      unsigned int xHead;      argument.d = x;      xHead = argument.i.hi & 0x7fffffff;      if (__builtin_expect(!!(xHead < 0x43300000u), 1))       {                  y = ( x - twoTo52 ) + twoTo52;                  if ( y != x )		    abort();                  z = x - 0.5;			                  y = ( z - twoTo52 ) + twoTo52;                  if ( y == (( x - twoTo52 ) + twoTo52) )		    abort();       }     return;}int main(){	func((double)1.00);	return 0;}

⌨️ 快捷键说明

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