14.6. Interfaces for libm

Table 14-38 defines the library name and shared object name for the libm library

Table 14-38. libm Definition

Library:libm
SONAME:See architecture specific part.

The behavior of the interfaces in this library is specified by the following specifications:

[LSB] This Specification
[SUSv3] POSIX 1003.1-2001 (ISO/IEC 9945-2003)
[SUSv4] POSIX 1003.1-2008 (ISO/IEC 9945-2009)

14.6.1. Math

14.6.1.1. Interfaces for Math

An LSB conforming implementation shall provide the generic functions for Math specified in Table 14-39, with the full mandatory functionality as described in the referenced underlying specification.

Table 14-39. libm - Math Function Interfaces

__finite [LSB]__finitef [LSB]__finitel [LSB]__fpclassify [LSB]
__fpclassifyf [LSB]__signbit [LSB]__signbitf [LSB]acos [SUSv4]
acosf [SUSv4]acosh [SUSv4]acoshf [SUSv4]acoshl [SUSv4]
acosl [SUSv4]asin [SUSv4]asinf [SUSv4]asinh [SUSv4]
asinhf [SUSv4]asinhl [SUSv4]asinl [SUSv4]atan [SUSv4]
atan2 [SUSv4]atan2f [SUSv4]atan2l [SUSv4]atanf [SUSv4]
atanh [SUSv4]atanhf [SUSv4]atanhl [SUSv4]atanl [SUSv4]
cabs [SUSv4]cabsf [SUSv4]cabsl [SUSv4]cacos [SUSv4]
cacosf [SUSv4]cacosh [SUSv4]cacoshf [SUSv4]cacoshl [SUSv4]
cacosl [SUSv4]carg [SUSv4]cargf [SUSv4]cargl [SUSv4]
casin [SUSv4]casinf [SUSv4]casinh [SUSv4]casinhf [SUSv4]
casinhl [SUSv4]casinl [SUSv4]catan [SUSv4]catanf [SUSv4]
catanh [SUSv4]catanhf [SUSv4]catanhl [SUSv4]catanl [SUSv4]
cbrt [SUSv4]cbrtf [SUSv4]cbrtl [SUSv4]ccos [SUSv4]
ccosf [SUSv4]ccosh [SUSv4]ccoshf [SUSv4]ccoshl [SUSv4]
ccosl [SUSv4]ceil [SUSv4]ceilf [SUSv4]ceill [SUSv4]
cexp [SUSv4]cexpf [SUSv4]cexpl [SUSv4]cimag [SUSv4]
cimagf [SUSv4]cimagl [SUSv4]clog [SUSv4]clog10 [LSB]
clog10f [LSB]clog10l [LSB]clogf [SUSv4]clogl [SUSv4]
conj [SUSv4]conjf [SUSv4]conjl [SUSv4]copysign [SUSv4]
copysignf [SUSv4]copysignl [SUSv4]cos [SUSv4]cosf [SUSv4]
cosh [SUSv4]coshf [SUSv4]coshl [SUSv4]cosl [SUSv4]
cpow [SUSv4]cpowf [SUSv4]cpowl [SUSv4]cproj [SUSv4]
cprojf [SUSv4]cprojl [SUSv4]creal [SUSv4]crealf [SUSv4]
creall [SUSv4]csin [SUSv4]csinf [SUSv4]csinh [SUSv4]
csinhf [SUSv4]csinhl [SUSv4]csinl [SUSv4]csqrt [SUSv4]
csqrtf [SUSv4]csqrtl [SUSv4]ctan [SUSv4]ctanf [SUSv4]
ctanh [SUSv4]ctanhf [SUSv4]ctanhl [SUSv4]ctanl [SUSv4]
drem [LSB]dremf [LSB]dreml [LSB]erf [SUSv4]
erfc [SUSv4]erfcf [SUSv4]erfcl [SUSv4]erff [SUSv4]
erfl [SUSv4]exp [SUSv4]exp10 [LSB]exp10f [LSB]
exp10l [LSB]exp2 [SUSv4]exp2f [SUSv4]expf [SUSv4]
expl [SUSv4]expm1 [SUSv4]expm1f [SUSv4]expm1l [SUSv4]
fabs [SUSv4]fabsf [SUSv4]fabsl [SUSv4]fdim [SUSv4]
fdimf [SUSv4]fdiml [SUSv4]feclearexcept [SUSv4]fedisableexcept [LSB]
feenableexcept [LSB]fegetenv [SUSv4]fegetexcept [LSB]fegetexceptflag [SUSv4]
fegetround [SUSv4]feholdexcept [SUSv4]feraiseexcept [SUSv4]fesetenv [SUSv4]
fesetexceptflag [SUSv4]fesetround [SUSv4]fetestexcept [SUSv4]feupdateenv [SUSv4]
finite [LSB]finitef [LSB]finitel [LSB]floor [SUSv4]
floorf [SUSv4]floorl [SUSv4]fma [SUSv4]fmaf [SUSv4]
fmal [SUSv4]fmax [SUSv4]fmaxf [SUSv4]fmaxl [SUSv4]
fmin [SUSv4]fminf [SUSv4]fminl [SUSv4]fmod [SUSv4]
fmodf [SUSv4]fmodl [SUSv4]frexp [SUSv4]frexpf [SUSv4]
frexpl [SUSv4]gamma [LSB]gammaf [LSB]gammal [LSB]
hypot [SUSv4]hypotf [SUSv4]hypotl [SUSv4]ilogb [SUSv4]
ilogbf [SUSv4]ilogbl [SUSv4]j0 [SUSv4]j0f [LSB]
j0l [LSB]j1 [SUSv4]j1f [LSB]j1l [LSB]
jn [SUSv4]jnf [LSB]jnl [LSB]ldexp [SUSv4]
ldexpf [SUSv4]ldexpl [SUSv4]lgamma [SUSv4]lgamma_r [LSB]
lgammaf [SUSv4]lgammaf_r [LSB]lgammal [SUSv4]lgammal_r [LSB]
llrint [SUSv4]llrintf [SUSv4]llrintl [SUSv4]llround [SUSv4]
llroundf [SUSv4]llroundl [SUSv4]log [SUSv4]log10 [SUSv4]
log10f [SUSv4]log10l [SUSv4]log1p [SUSv4]log1pf [SUSv4]
log1pl [SUSv4]log2 [SUSv4]log2f [SUSv4]log2l [SUSv4]
logb [SUSv4]logbf [SUSv4]logbl [SUSv4]logf [SUSv4]
logl [SUSv4]lrint [SUSv4]lrintf [SUSv4]lrintl [SUSv4]
lround [SUSv4]lroundf [SUSv4]lroundl [SUSv4]matherr [LSB]
modf [SUSv4]modff [SUSv4]modfl [SUSv4]nan [SUSv4]
nanf [SUSv4]nanl [SUSv4]nearbyint [SUSv4]nearbyintf [SUSv4]
nearbyintl [SUSv4]nextafter [SUSv4]nextafterf [SUSv4]nextafterl [SUSv4]
nexttoward [SUSv4]nexttowardf [SUSv4]nexttowardl [SUSv4]pow [SUSv4]
pow10 [LSB]pow10f [LSB]pow10l [LSB]powf [SUSv4]
powl [SUSv4]remainder [SUSv4]remainderf [SUSv4]remainderl [SUSv4]
remquo [SUSv4]remquof [SUSv4]remquol [SUSv4]rint [SUSv4]
rintf [SUSv4]rintl [SUSv4]round [SUSv4]roundf [SUSv4]
roundl [SUSv4]scalb [SUSv3]scalbf [LSB]scalbl [LSB]
scalbln [SUSv4]scalblnf [SUSv4]scalblnl [SUSv4]scalbn [SUSv4]
scalbnf [SUSv4]scalbnl [SUSv4]significand [LSB]significandf [LSB]
significandl [LSB]sin [SUSv4]sincos [LSB]sincosf [LSB]
sincosl [LSB]sinf [SUSv4]sinh [SUSv4]sinhf [SUSv4]
sinhl [SUSv4]sinl [SUSv4]sqrt [SUSv4]sqrtf [SUSv4]
sqrtl [SUSv4]tan [SUSv4]tanf [SUSv4]tanh [SUSv4]
tanhf [SUSv4]tanhl [SUSv4]tanl [SUSv4]tgamma [SUSv4]
tgammaf [SUSv4]tgammal [SUSv4]trunc [SUSv4]truncf [SUSv4]
truncl [SUSv4]y0 [SUSv4]y0f [LSB]y0l [LSB]
y1 [SUSv4]y1f [LSB]y1l [LSB]yn [SUSv4]
ynf [LSB]ynl [LSB]  

An LSB conforming implementation shall provide the generic deprecated functions for Math specified in Table 14-40, with the full mandatory functionality as described in the referenced underlying specification.

Note: These interfaces are deprecated, and applications should avoid using them. These interfaces may be withdrawn in future releases of this specification.

Table 14-40. libm - Math Deprecated Function Interfaces

drem [LSB]dremf [LSB]dreml [LSB]finite [LSB]
finitef [LSB]finitel [LSB]gamma [LSB]gammaf [LSB]
gammal [LSB]matherr [LSB]  

An LSB conforming implementation shall provide the generic data interfaces for Math specified in Table 14-41, with the full mandatory functionality as described in the referenced underlying specification.

Table 14-41. libm - Math Data Interfaces

signgam [SUSv4]