1*404b540aSrobert /* DO NOT EDIT THIS FILE. 2*404b540aSrobert 3*404b540aSrobert It has been auto-edited by fixincludes from: 4*404b540aSrobert 5*404b540aSrobert "fixinc/tests/inc/iso/math_c99.h" 6*404b540aSrobert 7*404b540aSrobert This had to be done to correct non-standard usages in the 8*404b540aSrobert original, manufacturer supplied header file. */ 9*404b540aSrobert 10*404b540aSrobert 11*404b540aSrobert 12*404b540aSrobert #if defined( SOLARIS_MATH_1_CHECK ) 13*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 14*404b540aSrobert #undef HUGE_VAL 15*404b540aSrobert #define HUGE_VAL (__builtin_huge_val()) 16*404b540aSrobert #undef HUGE_VALF 17*404b540aSrobert #define HUGE_VALF (__builtin_huge_valf()) 18*404b540aSrobert #undef HUGE_VALL 19*404b540aSrobert #define HUGE_VALL (__builtin_huge_vall()) 20*404b540aSrobert #endif /* SOLARIS_MATH_1_CHECK */ 21*404b540aSrobert 22*404b540aSrobert 23*404b540aSrobert #if defined( SOLARIS_MATH_2_CHECK ) 24*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 25*404b540aSrobert #undef INFINITY 26*404b540aSrobert #define INFINITY (__builtin_inff()) 27*404b540aSrobert #endif /* SOLARIS_MATH_2_CHECK */ 28*404b540aSrobert 29*404b540aSrobert 30*404b540aSrobert #if defined( SOLARIS_MATH_3_CHECK ) 31*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 32*404b540aSrobert #undef NAN 33*404b540aSrobert #define NAN (__builtin_nanf("")) 34*404b540aSrobert #endif /* SOLARIS_MATH_3_CHECK */ 35*404b540aSrobert 36*404b540aSrobert 37*404b540aSrobert #if defined( SOLARIS_MATH_4_CHECK ) 38*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 39*404b540aSrobert #undef fpclassify 40*404b540aSrobert #define fpclassify(x) \ 41*404b540aSrobert __extension__ ({ __typeof(x) __x_fp = (x); \ 42*404b540aSrobert isnan(__x_fp) \ 43*404b540aSrobert ? FP_NAN \ 44*404b540aSrobert : isinf(__x_fp) \ 45*404b540aSrobert ? FP_INFINITE \ 46*404b540aSrobert : isnormal(__x_fp) \ 47*404b540aSrobert ? FP_NORMAL \ 48*404b540aSrobert : __x_fp == 0.0 \ 49*404b540aSrobert ? FP_ZERO \ 50*404b540aSrobert : FP_SUBNORMAL; }) 51*404b540aSrobert #endif /* SOLARIS_MATH_4_CHECK */ 52*404b540aSrobert 53*404b540aSrobert 54*404b540aSrobert #if defined( SOLARIS_MATH_5_CHECK ) 55*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 56*404b540aSrobert #undef isfinite 57*404b540aSrobert #define isfinite(x) \ 58*404b540aSrobert __extension__ ({ __typeof (x) __x_f = (x); \ 59*404b540aSrobert __builtin_expect(!isnan(__x_f - __x_f), 1); }) 60*404b540aSrobert #endif /* SOLARIS_MATH_5_CHECK */ 61*404b540aSrobert 62*404b540aSrobert 63*404b540aSrobert #if defined( SOLARIS_MATH_6_CHECK ) 64*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 65*404b540aSrobert #undef isinf 66*404b540aSrobert #define isinf(x) \ 67*404b540aSrobert __extension__ ({ __typeof (x) __x_i = (x); \ 68*404b540aSrobert __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); }) 69*404b540aSrobert #endif /* SOLARIS_MATH_6_CHECK */ 70*404b540aSrobert 71*404b540aSrobert 72*404b540aSrobert #if defined( SOLARIS_MATH_7_CHECK ) 73*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 74*404b540aSrobert #undef isnormal 75*404b540aSrobert #define isnormal(x) \ 76*404b540aSrobert __extension__ ({ __typeof(x) __x_n = (x); \ 77*404b540aSrobert if (__x_n < 0.0) __x_n = -__x_n; \ 78*404b540aSrobert __builtin_expect(isfinite(__x_n) \ 79*404b540aSrobert && (sizeof(__x_n) == sizeof(float) \ 80*404b540aSrobert ? __x_n >= __FLT_MIN__ \ 81*404b540aSrobert : sizeof(__x_n) == sizeof(long double) \ 82*404b540aSrobert ? __x_n >= __LDBL_MIN__ \ 83*404b540aSrobert : __x_n >= __DBL_MIN__), 1); }) 84*404b540aSrobert #endif /* SOLARIS_MATH_7_CHECK */ 85*404b540aSrobert 86*404b540aSrobert 87*404b540aSrobert #if defined( SOLARIS_MATH_8_CHECK ) 88*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 89*404b540aSrobert #undef signbit 90*404b540aSrobert #define signbit(x) (sizeof(x) == sizeof(float) \ 91*404b540aSrobert ? __builtin_signbitf(x) \ 92*404b540aSrobert : sizeof(x) == sizeof(long double) \ 93*404b540aSrobert ? __builtin_signbitl(x) \ 94*404b540aSrobert : __builtin_signbit(x)) 95*404b540aSrobert #endif /* SOLARIS_MATH_8_CHECK */ 96*404b540aSrobert 97*404b540aSrobert 98*404b540aSrobert #if defined( SOLARIS_MATH_9_CHECK ) 99*404b540aSrobert #ident "@(#)math_c99.h 1.9 04/11/01 SMI" 100*404b540aSrobert #undef isgreater 101*404b540aSrobert #define isgreater(x, y) __builtin_isgreater(x, y) 102*404b540aSrobert #undef isgreaterequal 103*404b540aSrobert #define isgreaterequal(x, y) __builtin_isgreaterequal(x, y) 104*404b540aSrobert #undef isless 105*404b540aSrobert #define isless(x, y) __builtin_isless(x, y) 106*404b540aSrobert #undef islessequal 107*404b540aSrobert #define islessequal(x, y) __builtin_islessequal(x, y) 108*404b540aSrobert #undef islessgreater 109*404b540aSrobert #define islessgreater(x, y) __builtin_islessgreater(x, y) 110*404b540aSrobert #undef isunordered 111*404b540aSrobert #define isunordered(x, y) __builtin_isunordered(x, y) 112*404b540aSrobert #endif /* SOLARIS_MATH_9_CHECK */ 113