Next: Bit Operation Builtins, Up: Numeric Builtins [Contents][Index]
Returns a positive infinity, if supported by the floating-point format, else DBL_MAX. This function is suitable for implementing the ISO C macro HUGE_VAL.
Similar to __builtin_huge_val, except the return type is float.
Similar to __builtin_huge_val, except the return type is long double.
Similar to __builtin_huge_val, except the return type is _Floatn.
Similar to __builtin_huge_val, except the return type is _Floatnx.
This built-in implements the C99 fpclassify functionality. The first five int arguments should be the target librarys notion of the possible FP classes and are used for return values. They must be constant values and they must appear in this order: FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL and FP_ZERO. The ellipsis is for exactly one floating-point value to classify. GCC treats the last argument as type-generic, which means it does not do default promotion from float to double.
Similar to __builtin_huge_val, except a warning is generated if the target floating-point format does not support infinities.
Similar to __builtin_inf, except the return type is _Decimal32.
Similar to __builtin_inf, except the return type is _Decimal64.
Similar to __builtin_inf, except the return type is _Decimal128.
Similar to __builtin_inf, except the return type is float. This function is suitable for implementing the ISO C99 macro INFINITY.
Similar to __builtin_inf, except the return type is long double.
Similar to __builtin_inf, except the return type is _Floatn.
Similar to __builtin_inf, except the return type is _Floatnx.
Similar to isinf, except the return value is -1 for an argument of -Inf and 1 for an argument of +Inf. Note while the parameter list is an ellipsis, this function only accepts exactly one floating-point argument. GCC treats this parameter as type-generic, which means it does not do default promotion from float to double.
This is an implementation of the ISO C99 function nan.
Since ISO C99 defines this function in terms of strtod, which we do not implement, a description of the parsing is in order. The string is parsed as by strtol; that is, the base is recognized by leading 0 or 0x prefixes. The number parsed is placed in the significand such that the least significant bit of the number is at the least significant bit of the significand. The number is truncated to fit the significand field provided. The significand is forced to be a quiet NaN.
This function, if given a string literal all of which would have been consumed by strtol, is evaluated early enough that it is considered a compile-time constant.
Similar to __builtin_nan, except the return type is _Decimal32.
Similar to __builtin_nan, except the return type is _Decimal64.
Similar to __builtin_nan, except the return type is _Decimal128.
Similar to __builtin_nan, except the return type is float.
Similar to __builtin_nan, except the return type is long double.
Similar to __builtin_nan, except the return type is _Floatn.
Similar to __builtin_nan, except the return type is _Floatnx.
Similar to __builtin_nan, except the significand is forced to be a signaling NaN. The nans function is proposed by WG14 N965.
Similar to __builtin_nans, except the return type is _Decimal32.
Similar to __builtin_nans, except the return type is _Decimal64.
Similar to __builtin_nans, except the return type is _Decimal128.
Similar to __builtin_nans, except the return type is float.
Similar to __builtin_nans, except the return type is long double.
Similar to __builtin_nans, except the return type is _Floatn.
Similar to __builtin_nans, except the return type is _Floatnx.
Return non-zero if the argument is a signaling NaN and zero otherwise. Note while the parameter list is an ellipsis, this function only accepts exactly one floating-point argument. GCC treats this parameter as type-generic, which means it does not do default promotion from float to double. This built-in function can work even without the non-default -fsignaling-nans option, although if a signaling NaN is computed, stored or passed as argument to some function other than this built-in in the current translation unit, it is safer to use -fsignaling-nans. With -ffinite-math-only option this built-in function will always return 0.
Returns the first argument raised to the power of the second. Unlike the pow function no guarantees about precision and rounding are made.
Next: Bit Operation Builtins, Up: Numeric Builtins [Contents][Index]