Floating-point extensions part 4: supplementary functions

From cppreference.com

Floating-point extensions for C - Part 4: Supplementary functions, ISO/IEC TS 18661-4:2015, defines the following new components for the C standard library, as recommended by ISO/IEC/IEEE 60559:2011 (the current revision of IEEE-754).

Supplemenatary mathematical functions listed below are merged into C2x standard.

Predefined feature test macros
__STDC_IEC_60559_FUNCS__
integer constant of type long and value 201506L
(macro constant)
Supplementary mathematical functions
Defined in header <math.h>
compute 2 x -1
(function)
compute 10 x
(function)
compute 10 x -1
(function)
compute ln(1+x) (same as log1p )
(function)
compute log 2 (1+x)
(function)
compute log 10 (1+x)
(function)
compute the inverse square root x -1/2
(function)
compute compound interest, (1+x) n
(function)
compute the nth root of x, x 1/n
(function)
compute x raised to the nth power, where n is integer
(function)
compute x raised to the y power, x y
(function)
compute arccos(x)/π (measuring the angle in half-revolutions)
(function)
compute arcsin(x)/π (measuring the angle in half-revolutions)
(function)
compute arctan(x)/π (measuring the angle in half-revolutions)
(function)
compute arctan(y/x)/π (measuring the angle in half-revolutions)
(function)
compute cos(πx) (measuring the angle in half-revolutions)
(function)
compute sin(πx) (measuring the angle in half-revolutions)
(function)
compute tan(πx) (measuring the angle in half-revolutions)
(function)
Reduction functions
Defined in header <math.h>
compute the sum of n members of an array
(function)
compute the sum of the absolute values of n members of an array
(function)
compute the sum of squares of n members of an array
(function)
compute the dot product between n members of two arrays
(function)
compute the product of n members of an array as a scaled value and a scale factor
(function)
compute the dot product of n members of two arrays as a scaled value and a scale factor
(function)
compute the product of the differences between corresponding n members of two arrays as a scaled value and a scale factor
(function)
Correctly-rounded version of functions
Defined in header <math.h>
crexp (optional)
(FP Ext 4 TS)
correctly-rounded version of exp
(function)
crexpm1 (optional)
(FP Ext 4 TS)
correctly-rounded version of expm1
(function)
crexp2 (optional)
(FP Ext 4 TS)
correctly-rounded version of exp2
(function)
crexp2m1 (optional)
(FP Ext 4 TS)
correctly-rounded version of exp2m1
(function)
crexp10 (optional)
(FP Ext 4 TS)
correctly-rounded version of exp10
(function)
crexp10m1 (optional)
(FP Ext 4 TS)
correctly-rounded version of exp10m1
(function)
crlog (optional)
(FP Ext 4 TS)
correctly-rounded version of log
(function)
crlog2 (optional)
(FP Ext 4 TS)
correctly-rounded version of log2
(function)
crlog10 (optional)
(FP Ext 4 TS)
correctly-rounded version of log10
(function)
crlog1p (optional)
(FP Ext 4 TS)
correctly-rounded version of log1p
(function)
crlogp1 (optional)
(FP Ext 4 TS)
correctly-rounded version of logp1
(function)
crlog2p1 (optional)
(FP Ext 4 TS)
correctly-rounded version of log2p1
(function)
crlog10p1 (optional)
(FP Ext 4 TS)
correctly-rounded version of log10p1
(function)
crrsqrt (optional)
(FP Ext 4 TS)
correctly-rounded version of rsqrt
(function)
crcompoundn (optional)
(FP Ext 4 TS)
correctly-rounded version of compoundn
(function)
crrootn (optional)
(FP Ext 4 TS)
correctly-rounded version of rootn
(function)
crpown (optional)
(FP Ext 4 TS)
correctly-rounded version of pown
(function)
crpow (optional)
(FP Ext 4 TS)
correctly-rounded version of pow
(function)
crpowr (optional)
(FP Ext 4 TS)
correctly-rounded version of powr
(function)
crsin (optional)
(FP Ext 4 TS)
correctly-rounded version of sin
(function)
crcos (optional)
(FP Ext 4 TS)
correctly-rounded version of cos
(function)
crtan (optional)
(FP Ext 4 TS)
correctly-rounded version of tan
(function)
crsinpi (optional)
(FP Ext 4 TS)
correctly-rounded version of sinpi
(function)
crcospi (optional)
(FP Ext 4 TS)
correctly-rounded version of cospi
(function)
crtanpi (optional)
(FP Ext 4 TS)
correctly-rounded version of tanpi
(function)
crasinpi (optional)
(FP Ext 4 TS)
correctly-rounded version of asinpi
(function)
cracospi (optional)
(FP Ext 4 TS)
correctly-rounded version of acospi
(function)
cracospi (optional)
(FP Ext 4 TS)
correctly-rounded version of acospi
(function)
cratanpi (optional)
(FP Ext 4 TS)
correctly-rounded version of atanpi
(function)
cratan2pi (optional)
(FP Ext 4 TS)
correctly-rounded version of atan2pi
(function)
crasin (optional)
(FP Ext 4 TS)
correctly-rounded version of asin
(function)
cracos (optional)
(FP Ext 4 TS)
correctly-rounded version of acos
(function)
cratan (optional)
(FP Ext 4 TS)
correctly-rounded version of atan
(function)
cratan2 (optional)
(FP Ext 4 TS)
correctly-rounded version of atan2
(function)
crsinh (optional)
(FP Ext 4 TS)
correctly-rounded version of sinh
(function)
crcosh (optional)
(FP Ext 4 TS)
correctly-rounded version of cosh
(function)
crtanh (optional)
(FP Ext 4 TS)
correctly-rounded version of tanh
(function)
crasinh (optional)
(FP Ext 4 TS)
correctly-rounded version of asinh
(function)
cracosh (optional)
(FP Ext 4 TS)
correctly-rounded version of acosh
(function)
cratanh (optional)
(FP Ext 4 TS)
correctly-rounded version of atanh
(function)
crhypot (optional)
(FP Ext 4 TS)
correctly-rounded version of hypot
(function)
Complex version of functions
Defined in header <complex.h>
cexp2m1 (optional)
(FP Ext 4 TS)
complex number version of exp2m1
(function)
cexp10 (optional)
(FP Ext 4 TS)
complex number version of exp10
(function)
cexp10m1 (optional)
(FP Ext 4 TS)
complex number version of exp10m1
(function)
clogp1 (optional)
(FP Ext 4 TS)
complex number version of logp1
(function)
clog2p1 (optional)
(FP Ext 4 TS)
complex number version of log2p1
(function)
clog10p1 (optional)
(FP Ext 4 TS)
complex number version of log10p1
(function)
crsqrt (optional)
(FP Ext 4 TS)
complex number version of rsqrt
(function)
ccompoundn (optional)
(FP Ext 4 TS)
complex number version of compoundn
(function)
crootn (optional)
(FP Ext 4 TS)
complex number version of rootn
(function)
cpown (optional)
(FP Ext 4 TS)
complex number version of pown
(function)
cpowr (optional)
(FP Ext 4 TS)
complex number version of powr
(function)
cacospi (optional)
(FP Ext 4 TS)
complex number version of acospi
(function)
casinpi (optional)
(FP Ext 4 TS)
complex number version of asinpi
(function)
catanpi (optional)
(FP Ext 4 TS)
complex number version of atanpi
(function)
ccospi (optional)
(FP Ext 4 TS)
complex number version of cospi
(function)
csinpi (optional)
(FP Ext 4 TS)
complex number version of sinpi
(function)
ctanpi (optional)
(FP Ext 4 TS)
complex number version of tanpi
(function)

Notes

All functions added to the C library by this extension are only declared if a macro __STDC_WANT_IEC_60559_FUNCS_EXT__ is defined before math.h is included.

The decimal floating-point variants of every function are only defined if __STDC_WANT_IEC_60559_DFP_EXT__ is also defined before math.h is included.

The extended precision variants of every function are only defined if __STDC_WANT_IEC_60559_TYPES_EXT__ is defined before math.h is included.

The correctly-rounded versions of all functions (with the cr - prefix) are optional.