set(TARGET_LIBC_ENTRYPOINTS # ctype.h entrypoints libc.src.ctype.isalnum libc.src.ctype.isalpha libc.src.ctype.isascii libc.src.ctype.isblank libc.src.ctype.iscntrl libc.src.ctype.isdigit libc.src.ctype.isgraph libc.src.ctype.islower libc.src.ctype.isprint libc.src.ctype.ispunct libc.src.ctype.isspace libc.src.ctype.isupper libc.src.ctype.isxdigit libc.src.ctype.toascii libc.src.ctype.tolower libc.src.ctype.toupper # string.h entrypoints libc.src.string.memccpy libc.src.string.memchr libc.src.string.memcmp libc.src.string.memcpy libc.src.string.memmem libc.src.string.memmove libc.src.string.mempcpy libc.src.string.memrchr libc.src.string.memset libc.src.string.stpcpy libc.src.string.stpncpy libc.src.string.strcasestr libc.src.string.strcat libc.src.string.strchr libc.src.string.strchrnul libc.src.string.strcmp libc.src.string.strcpy libc.src.string.strcspn libc.src.string.strlcat libc.src.string.strlcpy libc.src.string.strlen libc.src.string.strncat libc.src.string.strncmp libc.src.string.strncpy libc.src.string.strnlen libc.src.string.strpbrk libc.src.string.strrchr libc.src.string.strspn libc.src.string.strstr libc.src.string.strtok libc.src.string.strtok_r # string.h entrypoints that depend on malloc libc.src.string.strdup libc.src.string.strndup # strings.h entrypoints libc.src.strings.bcmp libc.src.strings.bcopy libc.src.strings.bzero libc.src.strings.strcasecmp libc.src.strings.strncasecmp # inttypes.h entrypoints libc.src.inttypes.imaxabs libc.src.inttypes.imaxdiv libc.src.inttypes.strtoimax libc.src.inttypes.strtoumax # stdlib.h entrypoints libc.src.stdlib.abs libc.src.stdlib.atoi libc.src.stdlib.atof libc.src.stdlib.atol libc.src.stdlib.atoll libc.src.stdlib.bsearch libc.src.stdlib.div libc.src.stdlib.labs libc.src.stdlib.ldiv libc.src.stdlib.llabs libc.src.stdlib.lldiv libc.src.stdlib.qsort libc.src.stdlib.strtod libc.src.stdlib.strtof libc.src.stdlib.strtol libc.src.stdlib.strtold libc.src.stdlib.strtoll libc.src.stdlib.strtoul libc.src.stdlib.strtoull # stdlib.h external entrypoints libc.src.stdlib.malloc libc.src.stdlib.calloc libc.src.stdlib.realloc libc.src.stdlib.aligned_alloc libc.src.stdlib.free # errno.h entrypoints libc.src.errno.errno ) set(TARGET_LIBM_ENTRYPOINTS # fenv.h entrypoints libc.src.fenv.feclearexcept libc.src.fenv.fedisableexcept libc.src.fenv.feenableexcept libc.src.fenv.fegetenv libc.src.fenv.fegetexcept libc.src.fenv.fegetexceptflag libc.src.fenv.fegetround libc.src.fenv.feholdexcept 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 # math.h entrypoints libc.src.math.acosf libc.src.math.acoshf libc.src.math.asinf libc.src.math.asinhf libc.src.math.atan2 libc.src.math.atan2f libc.src.math.atanf libc.src.math.atanhf 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.cos libc.src.math.cosf libc.src.math.coshf libc.src.math.daddl libc.src.math.ddivl libc.src.math.dfmal 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.exp2 libc.src.math.exp2f 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.fdim libc.src.math.fdimf libc.src.math.fdiml libc.src.math.fdiv libc.src.math.fdivl libc.src.math.ffma libc.src.math.ffmal libc.src.math.floor libc.src.math.floorf libc.src.math.floorl libc.src.math.fma libc.src.math.fmaf libc.src.math.fmin libc.src.math.fminf libc.src.math.fminl libc.src.math.fmax libc.src.math.fmaxf libc.src.math.fmaxl libc.src.math.fmaximum libc.src.math.fmaximumf libc.src.math.fmaximuml libc.src.math.fmaximum_num libc.src.math.fmaximum_numf libc.src.math.fmaximum_numl libc.src.math.fmaximum_mag libc.src.math.fmaximum_magf libc.src.math.fmaximum_magl libc.src.math.fmaximum_mag_num libc.src.math.fmaximum_mag_numf libc.src.math.fmaximum_mag_numl libc.src.math.fminimum libc.src.math.fminimumf libc.src.math.fminimuml libc.src.math.fminimum_num libc.src.math.fminimum_numf libc.src.math.fminimum_numl libc.src.math.fminimum_mag libc.src.math.fminimum_magf libc.src.math.fminimum_magl libc.src.math.fminimum_mag_num libc.src.math.fminimum_mag_numf libc.src.math.fminimum_mag_numl libc.src.math.fmul libc.src.math.fmod libc.src.math.fmodf libc.src.math.fmodl libc.src.math.frexp libc.src.math.frexpf libc.src.math.frexpl libc.src.math.fsub libc.src.math.fsubl libc.src.math.hypot libc.src.math.hypotf libc.src.math.ilogb libc.src.math.ilogbf libc.src.math.ilogbl libc.src.math.ldexp libc.src.math.ldexpf libc.src.math.ldexpl 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.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.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 libc.src.math.nan libc.src.math.nanf libc.src.math.nanl libc.src.math.nearbyint libc.src.math.nearbyintf libc.src.math.nearbyintl libc.src.math.nextafter libc.src.math.nextafterf libc.src.math.nextafterl libc.src.math.nexttoward libc.src.math.nexttowardf libc.src.math.nexttowardl libc.src.math.pow libc.src.math.powf libc.src.math.remainderf libc.src.math.remainder libc.src.math.remainderl libc.src.math.remquof libc.src.math.remquo libc.src.math.remquol libc.src.math.rint libc.src.math.rintf libc.src.math.rintl libc.src.math.round libc.src.math.roundf libc.src.math.roundl libc.src.math.scalbln libc.src.math.scalblnf libc.src.math.scalblnl libc.src.math.scalbn libc.src.math.scalbnf libc.src.math.scalbnl libc.src.math.sin libc.src.math.sincosf libc.src.math.sincosf libc.src.math.sinf libc.src.math.sinhf libc.src.math.sqrt libc.src.math.sqrtf libc.src.math.sqrtl libc.src.math.tan libc.src.math.tanf libc.src.math.tanhf libc.src.math.trunc libc.src.math.truncf libc.src.math.truncl ) list(APPEND TARGET_LIBM_ENTRYPOINTS libc.src.math.acos libc.src.math.acospif libc.src.math.asin libc.src.math.asinpi libc.src.math.asinpif libc.src.math.atan libc.src.math.canonicalize libc.src.math.canonicalizef libc.src.math.canonicalizel libc.src.math.cbrtbf16 libc.src.math.cospif libc.src.math.dmull libc.src.math.dsqrtl libc.src.math.exp10m1f libc.src.math.exp2m1f libc.src.math.fmabf16 libc.src.math.fmull 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.getpayload libc.src.math.getpayloadf libc.src.math.getpayloadl 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.llogb libc.src.math.llogbf libc.src.math.llogbl libc.src.math.nextdown libc.src.math.nextdownf libc.src.math.nextdownl libc.src.math.nextup libc.src.math.nextupf libc.src.math.nextupl libc.src.math.roundeven libc.src.math.roundevenf libc.src.math.roundevenl 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.sincos libc.src.math.sinpif libc.src.math.tanpif 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.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_FLOAT16) list(APPEND TARGET_LIBM_ENTRYPOINTS libc.src.math.acosf16 libc.src.math.acoshf16 libc.src.math.acospif16 libc.src.math.asinf16 libc.src.math.asinhf16 libc.src.math.asinpif16 libc.src.math.atanf16 libc.src.math.atan2f16 libc.src.math.atanhf16 libc.src.math.atanpif16 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.erff16 libc.src.math.erfcf16 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.log10p1f16 libc.src.math.log2f16 libc.src.math.log2p1f16 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.rsqrtf libc.src.math.rsqrtf16 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 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_FLOAT128) list(APPEND TARGET_LIBM_ENTRYPOINTS libc.src.math.atan2f128 libc.src.math.atan2l 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() list(APPEND TARGET_LIBM_ENTRYPOINTS libc.src.math.atanbf16 libc.src.math.asinbf16 libc.src.math.bf16add libc.src.math.bf16addf libc.src.math.bf16addl libc.src.math.bf16div libc.src.math.bf16divf libc.src.math.bf16divl libc.src.math.bf16fma libc.src.math.bf16fmaf libc.src.math.bf16fmal libc.src.math.bf16mul libc.src.math.bf16mulf libc.src.math.bf16mull libc.src.math.bf16sub libc.src.math.bf16subf libc.src.math.bf16subl libc.src.math.canonicalizebf16 libc.src.math.ceilbf16 libc.src.math.copysignbf16 libc.src.math.fabsbf16 libc.src.math.fdimbf16 libc.src.math.floorbf16 libc.src.math.fmaxbf16 libc.src.math.fmaximumbf16 libc.src.math.fmaximum_magbf16 libc.src.math.fmaximum_mag_numbf16 libc.src.math.fmaximum_numbf16 libc.src.math.fminbf16 libc.src.math.fminimumbf16 libc.src.math.fminimum_magbf16 libc.src.math.fminimum_mag_numbf16 libc.src.math.fminimum_numbf16 libc.src.math.fmodbf16 libc.src.math.frexpbf16 libc.src.math.fromfpbf16 libc.src.math.fromfpxbf16 libc.src.math.getpayloadbf16 libc.src.math.hypotbf16 libc.src.math.ilogbbf16 libc.src.math.iscanonicalbf16 libc.src.math.issignalingbf16 libc.src.math.ldexpbf16 libc.src.math.llogbbf16 libc.src.math.llrintbf16 libc.src.math.llroundbf16 libc.src.math.log_bf16 libc.src.math.logbbf16 libc.src.math.lrintbf16 libc.src.math.lroundbf16 libc.src.math.modfbf16 libc.src.math.nanbf16 libc.src.math.nearbyintbf16 libc.src.math.nextafterbf16 libc.src.math.nextdownbf16 libc.src.math.nexttowardbf16 libc.src.math.nextupbf16 libc.src.math.remainderbf16 libc.src.math.remquobf16 libc.src.math.rintbf16 libc.src.math.roundbf16 libc.src.math.roundevenbf16 libc.src.math.scalblnbf16 libc.src.math.scalbnbf16 libc.src.math.setpayloadbf16 libc.src.math.setpayloadsigbf16 libc.src.math.sqrtbf16 libc.src.math.truncbf16 libc.src.math.totalorderbf16 libc.src.math.totalordermagbf16 libc.src.math.ufromfpbf16 libc.src.math.ufromfpxbf16 ) if(LIBC_TYPES_HAS_FLOAT128) list(APPEND TARGET_LIBM_ENTRYPOINTS libc.src.math.bf16addf128 libc.src.math.bf16divf128 libc.src.math.bf16fmaf128 libc.src.math.bf16mulf128 libc.src.math.bf16subf128 ) endif() set(TARGET_LIBMVEC_ENTRYPOINTS) if(LIBC_COMPILER_HAS_EXT_VECTOR_TYPE) list(APPEND TARGET_LIBMVEC_ENTRYPOINTS libc.src.mathvec.expf ) endif() set(TARGET_LLVMLIBC_ENTRYPOINTS ${TARGET_LIBC_ENTRYPOINTS} ${TARGET_LIBM_ENTRYPOINTS} ${TARGET_LIBMVEC_ENTRYPOINTS} )