Floating-point extensions part 4: Supplementary functions  
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 
 
 
 integer constant of type 
long and value 
201506L  (macro constant)
 
 
  Supplementary mathematical functions 
 
 compute 
2x
-1  (function) [edit] 
 
 
 compute 
10x
-1  (function) [edit] 
 
 
 compute 
log2(1+x)  (function) [edit] 
 
 
 compute 
log10(1+x)  (function) [edit] 
 
 
 compute the inverse square root 
x-1/2
  (function) [edit] 
 
 
 compute compound interest, 
(1+x)n
  (function) [edit] 
 
 
 compute the nth root of x, 
x1/n
  (function) [edit] 
 
 
 compute x raised to the nth power, where n is integer  
(function) [edit] 
 
 
 compute x raised to the y power, 
xy
  (function) [edit] 
 
 
 compute arccos(x)/π (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute arcsin(x)/π (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute arctan(x)/π (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute arctan(y/x)/π (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute cos(πx) (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute sin(πx) (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
 compute tan(πx) (measuring the angle in half-revolutions)  
(function) [edit] 
 
 
  Reduction functions 
 
 compute the sum of n members of an array  
(function) [edit] 
 
 
 compute the sum of the absolute values of n members of an array  
(function) [edit] 
 
 
 compute the sum of squares of n members of an array  
(function) [edit] 
 
 
 compute the dot product between n members of two arrays  
(function) [edit] 
 
 
 compute the product of n members of an array as a scaled value and a scale factor  
(function) [edit] 
 
 
 compute the dot product of n members of two arrays as a scaled value and a scale factor  
(function) [edit] 
 
 
 compute the product of the differences between corresponding n members of two arrays as a scaled value and a scale factor  
(function) [edit] 
 
 
  Correctly-rounded version of functions 
 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 
 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)
 
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.