diff --git a/libc/config/darwin/arm/entrypoints.txt b/libc/config/darwin/arm/entrypoints.txt index 38e585e43c776..3e13151524330 100644 --- a/libc/config/darwin/arm/entrypoints.txt +++ b/libc/config/darwin/arm/entrypoints.txt @@ -102,6 +102,20 @@ set(TARGET_LIBC_ENTRYPOINTS ) set(TARGET_LIBM_ENTRYPOINTS + # complex.h entrypoints + libc.src.complex.creal + libc.src.complex.crealf + libc.src.complex.creall + libc.src.complex.cimag + libc.src.complex.cimagf + libc.src.complex.cimagl + libc.src.complex.conj + libc.src.complex.conjf + libc.src.complex.conjl + libc.src.complex.cproj + libc.src.complex.cprojf + libc.src.complex.cprojl + # fenv.h entrypoints libc.src.fenv.feclearexcept libc.src.fenv.fedisableexcept @@ -111,11 +125,11 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.fenv.fegetexceptflag libc.src.fenv.fegetround libc.src.fenv.feholdexcept + libc.src.fenv.feraiseexcept libc.src.fenv.fesetenv libc.src.fenv.fesetexcept libc.src.fenv.fesetexceptflag libc.src.fenv.fesetround - libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.fenv.fetestexceptflag libc.src.fenv.feupdateenv @@ -130,33 +144,44 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.math.atan libc.src.math.atanf libc.src.math.atanhf + libc.src.math.canonicalize + libc.src.math.canonicalizef + libc.src.math.canonicalizel libc.src.math.cbrt libc.src.math.cbrtf - libc.src.math.copysign - libc.src.math.copysignf - libc.src.math.copysignl libc.src.math.ceil libc.src.math.ceilf libc.src.math.ceill - libc.src.math.coshf + libc.src.math.copysign + libc.src.math.copysignf + libc.src.math.copysignl libc.src.math.cos libc.src.math.cosf + libc.src.math.coshf libc.src.math.cospif libc.src.math.dfmal + libc.src.math.dmull libc.src.math.dsqrtl + libc.src.math.daddl libc.src.math.ddivl + libc.src.math.dsubl libc.src.math.erff libc.src.math.exp - libc.src.math.expf libc.src.math.exp10 libc.src.math.exp10f + libc.src.math.exp10m1f libc.src.math.exp2 libc.src.math.exp2f + libc.src.math.exp2m1f + libc.src.math.expf libc.src.math.expm1 libc.src.math.expm1f libc.src.math.fabs libc.src.math.fabsf libc.src.math.fabsl + libc.src.math.fadd + libc.src.math.faddl + libc.src.math.fadd libc.src.math.fdim libc.src.math.fdimf libc.src.math.fdiml @@ -171,49 +196,98 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.math.fmaf libc.src.math.fmax libc.src.math.fmaxf + libc.src.math.fmaximum + libc.src.math.fmaximum_mag + libc.src.math.fmaximum_mag_num + libc.src.math.fmaximum_mag_numf + libc.src.math.fmaximum_mag_numl + libc.src.math.fmaximum_magf + libc.src.math.fmaximum_magl + libc.src.math.fmaximum_num + libc.src.math.fmaximum_numf + libc.src.math.fmaximum_numl + libc.src.math.fmaximumf + libc.src.math.fmaximuml libc.src.math.fmaxl libc.src.math.fmin libc.src.math.fminf + libc.src.math.fminimum + libc.src.math.fminimum_mag + libc.src.math.fminimum_mag_num + libc.src.math.fminimum_mag_numf + libc.src.math.fminimum_mag_numl + libc.src.math.fminimum_magf + libc.src.math.fminimum_magl + libc.src.math.fminimum_num + libc.src.math.fminimum_numf + libc.src.math.fminimum_numl + libc.src.math.fminimumf + libc.src.math.fminimuml libc.src.math.fminl libc.src.math.fmod libc.src.math.fmodf + libc.src.math.fmodl libc.src.math.fmul + libc.src.math.fmull libc.src.math.frexp libc.src.math.frexpf libc.src.math.frexpl + libc.src.math.fromfp + libc.src.math.fromfpf + libc.src.math.fromfpl + libc.src.math.fromfpx + libc.src.math.fromfpxf + libc.src.math.fromfpxl + libc.src.math.fsqrt + libc.src.math.fsqrtl libc.src.math.fsub libc.src.math.fsubl + libc.src.math.getpayload + libc.src.math.getpayloadf + libc.src.math.getpayloadl libc.src.math.hypot libc.src.math.hypotf libc.src.math.ilogb libc.src.math.ilogbf libc.src.math.ilogbl + libc.src.math.iscanonical + libc.src.math.iscanonicalf + libc.src.math.iscanonicall + libc.src.math.isnan + libc.src.math.isnanf + libc.src.math.isnanl + libc.src.math.issignaling + libc.src.math.issignalingf + libc.src.math.issignalingl + libc.src.math.ldexp + libc.src.math.ldexpf + libc.src.math.ldexpl + libc.src.math.llogb + libc.src.math.llogbf + libc.src.math.llogbl libc.src.math.llrint libc.src.math.llrintf libc.src.math.llrintl libc.src.math.llround libc.src.math.llroundf libc.src.math.llroundl - libc.src.math.lrint - libc.src.math.lrintf - libc.src.math.lrintl - libc.src.math.lround - libc.src.math.lroundf - libc.src.math.lroundl - libc.src.math.ldexp - libc.src.math.ldexpf - libc.src.math.ldexpl + libc.src.math.log libc.src.math.log10 libc.src.math.log10f libc.src.math.log1p libc.src.math.log1pf libc.src.math.log2 libc.src.math.log2f - libc.src.math.log - libc.src.math.logf libc.src.math.logb libc.src.math.logbf libc.src.math.logbl + libc.src.math.logf + libc.src.math.lrint + libc.src.math.lrintf + libc.src.math.lrintl + libc.src.math.lround + libc.src.math.lroundf + libc.src.math.lroundl libc.src.math.modf libc.src.math.modff libc.src.math.modfl @@ -226,21 +300,30 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.math.nextafter libc.src.math.nextafterf libc.src.math.nextafterl + libc.src.math.nextdown + libc.src.math.nextdownf + libc.src.math.nextdownl libc.src.math.nexttoward libc.src.math.nexttowardf libc.src.math.nexttowardl + libc.src.math.nextup + libc.src.math.nextupf + libc.src.math.nextupl libc.src.math.pow libc.src.math.powf - libc.src.math.remainderf libc.src.math.remainder + libc.src.math.remainderf libc.src.math.remainderl - libc.src.math.remquof libc.src.math.remquo + libc.src.math.remquof libc.src.math.remquol libc.src.math.rint libc.src.math.rintf libc.src.math.rintl libc.src.math.round + libc.src.math.roundeven + libc.src.math.roundevenf + libc.src.math.roundevenl libc.src.math.roundf libc.src.math.roundl libc.src.math.scalbln @@ -249,11 +332,17 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.math.scalbn libc.src.math.scalbnf libc.src.math.scalbnl + libc.src.math.setpayload + libc.src.math.setpayloadf + libc.src.math.setpayloadl + libc.src.math.setpayloadsig + libc.src.math.setpayloadsigf + libc.src.math.setpayloadsigl + libc.src.math.sin libc.src.math.sincos libc.src.math.sincosf - libc.src.math.sinhf - libc.src.math.sin libc.src.math.sinf + libc.src.math.sinhf libc.src.math.sinpif libc.src.math.sqrt libc.src.math.sqrtf @@ -261,14 +350,227 @@ set(TARGET_LIBM_ENTRYPOINTS libc.src.math.tan libc.src.math.tanf libc.src.math.tanhf + libc.src.math.totalorder + libc.src.math.totalorderf + libc.src.math.totalorderl libc.src.math.totalordermag libc.src.math.totalordermagf libc.src.math.totalordermagl libc.src.math.trunc libc.src.math.truncf libc.src.math.truncl + libc.src.math.ufromfp + libc.src.math.ufromfpf + libc.src.math.ufromfpl + libc.src.math.ufromfpx + libc.src.math.ufromfpxf + libc.src.math.ufromfpxl ) +if(LIBC_TYPES_HAS_CFLOAT16) + list(APPEND TARGET_LIBM_ENTRYPOINTS + # complex.h C23 _Complex _Float16 entrypoints + libc.src.complex.crealf16 + libc.src.complex.cimagf16 + libc.src.complex.conjf16 + libc.src.complex.cprojf16 + ) +endif() + +if(LIBC_TYPES_HAS_FLOAT16) + list(APPEND TARGET_LIBM_ENTRYPOINTS + # math.h C23 _Float16 entrypoints + libc.src.math.acosf16 + libc.src.math.acoshf16 + libc.src.math.asinf16 + libc.src.math.asinhf16 + libc.src.math.canonicalizef16 + libc.src.math.ceilf16 + libc.src.math.copysignf16 + libc.src.math.cosf16 + libc.src.math.coshf16 + libc.src.math.cospif16 + libc.src.math.exp10f16 + libc.src.math.exp10m1f16 + libc.src.math.exp2f16 + libc.src.math.exp2m1f16 + libc.src.math.expf16 + libc.src.math.expm1f16 + libc.src.math.f16add + libc.src.math.f16addf + libc.src.math.f16addl + libc.src.math.f16div + libc.src.math.f16divf + libc.src.math.f16divl + libc.src.math.f16fma + libc.src.math.f16fmaf + libc.src.math.f16fmal + libc.src.math.f16mul + libc.src.math.f16mulf + libc.src.math.f16mull + libc.src.math.f16sqrt + libc.src.math.f16sqrtf + libc.src.math.f16sqrtl + libc.src.math.f16sub + libc.src.math.f16subf + libc.src.math.f16subl + libc.src.math.fabsf16 + libc.src.math.fdimf16 + libc.src.math.floorf16 + libc.src.math.fmaf16 + libc.src.math.fmaxf16 + libc.src.math.fmaximum_mag_numf16 + libc.src.math.fmaximum_magf16 + libc.src.math.fmaximum_numf16 + libc.src.math.fmaximumf16 + libc.src.math.fminf16 + libc.src.math.fminimum_mag_numf16 + libc.src.math.fminimum_magf16 + libc.src.math.fminimum_numf16 + libc.src.math.fminimumf16 + libc.src.math.fmodf16 + libc.src.math.frexpf16 + libc.src.math.fromfpf16 + libc.src.math.fromfpxf16 + libc.src.math.getpayloadf16 + libc.src.math.hypotf16 + libc.src.math.ilogbf16 + libc.src.math.iscanonicalf16 + libc.src.math.issignalingf16 + libc.src.math.ldexpf16 + libc.src.math.llogbf16 + libc.src.math.llrintf16 + libc.src.math.llroundf16 + libc.src.math.log10f16 + libc.src.math.log2f16 + libc.src.math.logbf16 + libc.src.math.logf16 + libc.src.math.lrintf16 + libc.src.math.lroundf16 + libc.src.math.modff16 + libc.src.math.nanf16 + libc.src.math.nearbyintf16 + libc.src.math.nextafterf16 + libc.src.math.nextdownf16 + libc.src.math.nexttowardf16 + libc.src.math.nextupf16 + libc.src.math.remainderf16 + libc.src.math.remquof16 + libc.src.math.rintf16 + libc.src.math.roundevenf16 + libc.src.math.roundf16 + libc.src.math.scalblnf16 + libc.src.math.scalbnf16 + libc.src.math.setpayloadf16 + libc.src.math.setpayloadsigf16 + libc.src.math.sinf16 + libc.src.math.sinhf16 + libc.src.math.sinpif16 + libc.src.math.sqrtf16 + libc.src.math.tanf16 + libc.src.math.tanhf16 + libc.src.math.tanpif16 + libc.src.math.totalorderf16 + libc.src.math.totalordermagf16 + libc.src.math.truncf16 + libc.src.math.ufromfpf16 + libc.src.math.ufromfpxf16 + ) + + if(LIBC_TYPES_HAS_FLOAT128) + list(APPEND TARGET_LIBM_ENTRYPOINTS + # math.h C23 mixed _Float16 and _Float128 entrypoints + libc.src.math.f16addf128 + libc.src.math.f16divf128 + libc.src.math.f16fmaf128 + libc.src.math.f16mulf128 + libc.src.math.f16sqrtf128 + libc.src.math.f16subf128 + ) + endif() +endif() + +if(LIBC_TYPES_HAS_CFLOAT128) + list(APPEND TARGET_LIBM_ENTRYPOINTS + # complex.h C23 _Complex _Float128 entrypoints + libc.src.complex.crealf128 + libc.src.complex.cimagf128 + libc.src.complex.conjf128 + libc.src.complex.cprojf128 + ) +endif() + +if(LIBC_TYPES_HAS_FLOAT128) + list(APPEND TARGET_LIBM_ENTRYPOINTS + # math.h C23 _Float128 entrypoints + libc.src.math.atan2f128 + libc.src.math.canonicalizef128 + libc.src.math.ceilf128 + libc.src.math.copysignf128 + libc.src.math.daddf128 + libc.src.math.ddivf128 + libc.src.math.dfmaf128 + libc.src.math.dmulf128 + libc.src.math.dsqrtf128 + libc.src.math.dsubf128 + libc.src.math.fabsf128 + libc.src.math.faddf128 + libc.src.math.fdimf128 + libc.src.math.fdivf128 + libc.src.math.ffmaf128 + libc.src.math.floorf128 + libc.src.math.fmaxf128 + libc.src.math.fmaximum_mag_numf128 + libc.src.math.fmaximum_magf128 + libc.src.math.fmaximum_numf128 + libc.src.math.fmaximumf128 + libc.src.math.fminf128 + libc.src.math.fminimum_mag_numf128 + libc.src.math.fminimum_magf128 + libc.src.math.fminimum_numf128 + libc.src.math.fminimumf128 + libc.src.math.fmodf128 + libc.src.math.fmulf128 + libc.src.math.frexpf128 + libc.src.math.fromfpf128 + libc.src.math.fromfpxf128 + libc.src.math.fsqrtf128 + libc.src.math.fsubf128 + libc.src.math.getpayloadf128 + libc.src.math.ilogbf128 + libc.src.math.iscanonicalf128 + libc.src.math.issignalingf128 + libc.src.math.ldexpf128 + libc.src.math.llogbf128 + libc.src.math.llrintf128 + libc.src.math.llroundf128 + libc.src.math.logbf128 + libc.src.math.lrintf128 + libc.src.math.lroundf128 + libc.src.math.modff128 + libc.src.math.nanf128 + libc.src.math.nearbyintf128 + libc.src.math.nextafterf128 + libc.src.math.nextdownf128 + libc.src.math.nextupf128 + libc.src.math.remainderf128 + libc.src.math.remquof128 + libc.src.math.rintf128 + libc.src.math.roundevenf128 + libc.src.math.roundf128 + libc.src.math.scalblnf128 + libc.src.math.scalbnf128 + libc.src.math.setpayloadf128 + libc.src.math.setpayloadsigf128 + libc.src.math.sqrtf128 + libc.src.math.totalorderf128 + libc.src.math.totalordermagf128 + libc.src.math.truncf128 + libc.src.math.ufromfpf128 + libc.src.math.ufromfpxf128 + ) +endif() + if(LIBC_COMPILER_HAS_FIXED_POINT) list(APPEND TARGET_LIBM_ENTRYPOINTS # stdfix.h _Fract and _Accum entrypoints