11.4. Interfaces for libm

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

Table 11-24. 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] This Specification
[SUSv2] SUSv2
[SUSv3] ISO POSIX (2003)

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-25, with the full mandatory functionality as described in the referenced underlying specification.

Table 11-25. libm - Math Function Interfaces

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

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

Table 11-26. libm - Math Data Interfaces

signgam(GLIBC_2.0) [SUSv3]