11.4. Interfaces for libm

Table 11-33 defines the library name and shared object name for the libm library

Table 11-33. libm Definition

Library:libm
SONAME:libm.so.6

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

[ISOC99] ISO C (1999)
[LSB] ISO/IEC 23360 Part 1
[SUSv3] ISO POSIX (2003)
[SVID.3] SVID Issue 3

11.4.1. Math

11.4.1.1. Interfaces for Math

An LSB conforming implementation shall provide the architecture specific functions for Math specified in Table 11-34, with the full mandatory functionality as described in the referenced underlying specification.

Table 11-34. libm - Math Function Interfaces

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

An LSB conforming implementation shall provide the architecture specific deprecated functions for Math specified in Table 11-35, 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 11-35. libm - Math Deprecated Function Interfaces

drem(GLIBC_2.3) [LSB]dremf(GLIBC_2.3) [LSB]dreml(GLIBC_2.3) [LSB]finite(GLIBC_2.3) [LSB]
finitef(GLIBC_2.3) [LSB]finitel(GLIBC_2.3) [LSB]gamma(GLIBC_2.3) [LSB]gammaf(GLIBC_2.3) [LSB]
gammal(GLIBC_2.3) [LSB]matherr(GLIBC_2.3) [SVID.3]  

An LSB conforming implementation shall provide the architecture specific data interfaces for Math specified in Table 11-36, with the full mandatory functionality as described in the referenced underlying specification.

Table 11-36. libm - Math Data Interfaces

signgam(GLIBC_2.3) [SUSv3]