signbit-1.c
来自「用于进行gcc测试」· C语言 代码 · 共 51 行
C
51 行
/* { dg-options "-O0 -std=gnu99" } *//* Decimal float versions of __builtin_signbit. */extern void abort (void);int failures;#ifdef DBGextern int printf (const char *, ...);#define FAILURE { printf ("failed at line %d\n", __LINE__); failures++; }#else#define FAILURE abort ();#endif#define CHECK32(D,I) \ if ((__builtin_signbitd32 (D) != 0) != I) FAILURE#define CHECK64(D,I) \ if ((__builtin_signbitd64 (D) != 0) != I) FAILURE#define CHECK128(D,I) \ if ((__builtin_signbitd128 (D) != 0) != I) FAILURE/* Prevent the compiler from folding the calls at compile time. */volatile _Decimal32 sd;volatile _Decimal64 dd;volatile _Decimal128 td;intmain (){ sd = 1.9df; CHECK32 (sd, 0) sd = -5.3df; CHECK32 (sd, 1) sd = 0.0df; CHECK32 (sd, 0) sd = -0.0df; CHECK32 (sd, 1) dd = 1.9dd; CHECK64 (dd, 0) dd = -5.3dd; CHECK64 (dd, 1) dd = 0.0dd; CHECK64 (dd, 0) dd = -0.0dd; CHECK64 (dd, 1) td = 1.9dl; CHECK128 (td, 0) td = -5.3dl; CHECK128 (td, 1) td = 0.0dl; CHECK128 (td, 0) td = -0.0dl; CHECK128 (td, 1) if (failures != 0) abort (); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?