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 library’s 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]