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

    # dlfcn.h entrypoints
    libc.src.dlfcn.dlclose
    libc.src.dlfcn.dlerror
    libc.src.dlfcn.dlopen
    libc.src.dlfcn.dlsym

    # errno.h entrypoints
    libc.src.errno.errno

    # fcntl.h entrypoints
    libc.src.fcntl.creat
    libc.src.fcntl.fcntl
    libc.src.fcntl.open
    libc.src.fcntl.openat

    # sched.h entrypoints
    libc.src.sched.sched_get_priority_max
    libc.src.sched.sched_get_priority_min
    libc.src.sched.sched_getaffinity
    libc.src.sched.sched_getparam
    libc.src.sched.sched_getscheduler
    libc.src.sched.sched_rr_get_interval
    libc.src.sched.sched_setaffinity
    libc.src.sched.sched_setparam
    libc.src.sched.sched_setscheduler
    libc.src.sched.sched_yield

    # string.h entrypoints
    libc.src.string.bcmp
    libc.src.string.bcopy
    libc.src.string.bzero
    libc.src.string.index
    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.memset_explicit
    libc.src.string.rindex
    libc.src.string.stpcpy
    libc.src.string.stpncpy
    libc.src.string.strcasecmp
    libc.src.string.strcasestr
    libc.src.string.strcat
    libc.src.string.strchr
    libc.src.string.strchrnul
    libc.src.string.strcmp
    libc.src.string.strcoll
    libc.src.string.strcpy
    libc.src.string.strcspn
    libc.src.string.strdup
    libc.src.string.strerror
    libc.src.string.strerror_r
    libc.src.string.strlcat
    libc.src.string.strlcpy
    libc.src.string.strlen
    libc.src.string.strncasecmp
    libc.src.string.strncat
    libc.src.string.strncmp
    libc.src.string.strncpy
    libc.src.string.strndup
    libc.src.string.strnlen
    libc.src.string.strpbrk
    libc.src.string.strrchr
    libc.src.string.strsep
    libc.src.string.strsignal
    libc.src.string.strspn
    libc.src.string.strstr
    libc.src.string.strtok
    libc.src.string.strtok_r
    libc.src.string.strxfrm

    # inttypes.h entrypoints
    libc.src.inttypes.imaxabs
    libc.src.inttypes.imaxdiv
    libc.src.inttypes.strtoimax
    libc.src.inttypes.strtoumax

    # stdbit.h entrypoints
    libc.src.stdbit.stdc_bit_ceil_uc
    libc.src.stdbit.stdc_bit_ceil_ui
    libc.src.stdbit.stdc_bit_ceil_ul
    libc.src.stdbit.stdc_bit_ceil_ull
    libc.src.stdbit.stdc_bit_ceil_us
    libc.src.stdbit.stdc_bit_floor_uc
    libc.src.stdbit.stdc_bit_floor_ui
    libc.src.stdbit.stdc_bit_floor_ul
    libc.src.stdbit.stdc_bit_floor_ull
    libc.src.stdbit.stdc_bit_floor_us
    libc.src.stdbit.stdc_bit_width_uc
    libc.src.stdbit.stdc_bit_width_ui
    libc.src.stdbit.stdc_bit_width_ul
    libc.src.stdbit.stdc_bit_width_ull
    libc.src.stdbit.stdc_bit_width_us
    libc.src.stdbit.stdc_count_ones_uc
    libc.src.stdbit.stdc_count_ones_ui
    libc.src.stdbit.stdc_count_ones_ul
    libc.src.stdbit.stdc_count_ones_ull
    libc.src.stdbit.stdc_count_ones_us
    libc.src.stdbit.stdc_count_zeros_uc
    libc.src.stdbit.stdc_count_zeros_ui
    libc.src.stdbit.stdc_count_zeros_ul
    libc.src.stdbit.stdc_count_zeros_ull
    libc.src.stdbit.stdc_count_zeros_us
    libc.src.stdbit.stdc_first_leading_one_uc
    libc.src.stdbit.stdc_first_leading_one_ui
    libc.src.stdbit.stdc_first_leading_one_ul
    libc.src.stdbit.stdc_first_leading_one_ull
    libc.src.stdbit.stdc_first_leading_one_us
    libc.src.stdbit.stdc_first_leading_zero_uc
    libc.src.stdbit.stdc_first_leading_zero_ui
    libc.src.stdbit.stdc_first_leading_zero_ul
    libc.src.stdbit.stdc_first_leading_zero_ull
    libc.src.stdbit.stdc_first_leading_zero_us
    libc.src.stdbit.stdc_first_trailing_one_uc
    libc.src.stdbit.stdc_first_trailing_one_ui
    libc.src.stdbit.stdc_first_trailing_one_ul
    libc.src.stdbit.stdc_first_trailing_one_ull
    libc.src.stdbit.stdc_first_trailing_one_us
    libc.src.stdbit.stdc_first_trailing_zero_uc
    libc.src.stdbit.stdc_first_trailing_zero_ui
    libc.src.stdbit.stdc_first_trailing_zero_ul
    libc.src.stdbit.stdc_first_trailing_zero_ull
    libc.src.stdbit.stdc_first_trailing_zero_us
    libc.src.stdbit.stdc_has_single_bit_uc
    libc.src.stdbit.stdc_has_single_bit_ui
    libc.src.stdbit.stdc_has_single_bit_ul
    libc.src.stdbit.stdc_has_single_bit_ull
    libc.src.stdbit.stdc_has_single_bit_us
    libc.src.stdbit.stdc_leading_ones_uc
    libc.src.stdbit.stdc_leading_ones_ui
    libc.src.stdbit.stdc_leading_ones_ul
    libc.src.stdbit.stdc_leading_ones_ull
    libc.src.stdbit.stdc_leading_ones_us
    libc.src.stdbit.stdc_leading_zeros_uc
    libc.src.stdbit.stdc_leading_zeros_ui
    libc.src.stdbit.stdc_leading_zeros_ul
    libc.src.stdbit.stdc_leading_zeros_ull
    libc.src.stdbit.stdc_leading_zeros_us
    libc.src.stdbit.stdc_trailing_ones_uc
    libc.src.stdbit.stdc_trailing_ones_ui
    libc.src.stdbit.stdc_trailing_ones_ul
    libc.src.stdbit.stdc_trailing_ones_ull
    libc.src.stdbit.stdc_trailing_ones_us
    libc.src.stdbit.stdc_trailing_zeros_uc
    libc.src.stdbit.stdc_trailing_zeros_ui
    libc.src.stdbit.stdc_trailing_zeros_ul
    libc.src.stdbit.stdc_trailing_zeros_ull
    libc.src.stdbit.stdc_trailing_zeros_us

    # stdlib.h entrypoints
    libc.src.stdlib.abs
    libc.src.stdlib.atof
    libc.src.stdlib.atoi
    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.qsort_r
    libc.src.stdlib.rand
    libc.src.stdlib.srand
    libc.src.stdlib.strfromd
    libc.src.stdlib.strfromf
    # TODO: long double support is buggy with clang-11. Re-enable when buildbots are upgraded.
    # libc.src.stdlib.strfroml
    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.aligned_alloc
    libc.src.stdlib.calloc
    libc.src.stdlib.free
    libc.src.stdlib.malloc
    libc.src.stdlib.realloc

    # stdio.h entrypoints
    libc.src.stdio.fdopen
    libc.src.stdio.fileno
    libc.src.stdio.fprintf
    libc.src.stdio.fscanf
    libc.src.stdio.vfscanf
    libc.src.stdio.printf
    libc.src.stdio.remove
    libc.src.stdio.rename
    libc.src.stdio.scanf
    libc.src.stdio.vscanf
    libc.src.stdio.snprintf
    libc.src.stdio.sprintf
    libc.src.stdio.asprintf
    libc.src.stdio.sscanf
    libc.src.stdio.vsscanf
    libc.src.stdio.vfprintf
    libc.src.stdio.vprintf
    libc.src.stdio.vsnprintf
    libc.src.stdio.vsprintf
    libc.src.stdio.vasprintf

    # sys/epoll.h entrypoints
    libc.src.sys.epoll.epoll_create
    libc.src.sys.epoll.epoll_create1
    libc.src.sys.epoll.epoll_ctl
    libc.src.sys.epoll.epoll_pwait
    libc.src.sys.epoll.epoll_wait
    # TODO: Need to check if pwait2 is available before providing.
    # https://github.com/llvm/llvm-project/issues/80060
    # libc.src.sys.epoll.epoll_pwait2

    # sys/mman.h entrypoints
    libc.src.sys.mman.madvise
    libc.src.sys.mman.mincore
    libc.src.sys.mman.mlock
    libc.src.sys.mman.mlock2
    libc.src.sys.mman.mlockall
    libc.src.sys.mman.mmap
    libc.src.sys.mman.mprotect
    libc.src.sys.mman.msync
    libc.src.sys.mman.munlock
    libc.src.sys.mman.munlockall
    libc.src.sys.mman.munmap
    libc.src.sys.mman.remap_file_pages
    libc.src.sys.mman.posix_madvise
    libc.src.sys.mman.shm_open
    libc.src.sys.mman.shm_unlink

    # sys/random.h entrypoints
    libc.src.sys.random.getrandom

    # sys/resource.h entrypoints
    libc.src.sys.resource.getrlimit
    libc.src.sys.resource.setrlimit

    # sys/sendfile entrypoints
    libc.src.sys.sendfile.sendfile

    # sys/stat.h entrypoints
    libc.src.sys.stat.chmod
    libc.src.sys.stat.fchmod
    libc.src.sys.stat.fchmodat
    libc.src.sys.stat.fstat
    libc.src.sys.stat.lstat
    libc.src.sys.stat.mkdir
    libc.src.sys.stat.mkdirat
    libc.src.sys.stat.stat

    # sys/statvfs.h
    libc.src.sys.statvfs.fstatvfs
    libc.src.sys.statvfs.statvfs

    # sys/utsname.h entrypoints
    libc.src.sys.utsname.uname

    # sys/wait.h entrypoints
    libc.src.sys.wait.wait
    libc.src.sys.wait.wait4
    libc.src.sys.wait.waitpid

    # sys/prctl.h entrypoints
    libc.src.sys.prctl.prctl

    # sys/auxv.h entrypoints
    libc.src.sys.auxv.getauxval

    # termios.h entrypoints
    libc.src.termios.cfgetispeed
    libc.src.termios.cfgetospeed
    libc.src.termios.cfsetispeed
    libc.src.termios.cfsetospeed
    libc.src.termios.tcdrain
    libc.src.termios.tcflow
    libc.src.termios.tcflush
    libc.src.termios.tcgetattr
    libc.src.termios.tcgetsid
    libc.src.termios.tcsendbreak
    libc.src.termios.tcsetattr

    # unistd.h entrypoints
    libc.src.unistd.access
    libc.src.unistd.chdir
    libc.src.unistd.close
    libc.src.unistd.dup
    libc.src.unistd.dup2
    libc.src.unistd.dup3
    libc.src.unistd.execve
    libc.src.unistd.fchdir
    libc.src.unistd.fpathconf
    libc.src.unistd.fsync
    libc.src.unistd.ftruncate
    libc.src.unistd.getcwd
    libc.src.unistd.geteuid
    libc.src.unistd.getpid
    libc.src.unistd.getppid
    libc.src.unistd.gettid
    libc.src.unistd.getuid
    libc.src.unistd.isatty
    libc.src.unistd.link
    libc.src.unistd.linkat
    libc.src.unistd.lseek
    libc.src.unistd.pathconf
    libc.src.unistd.pipe
    libc.src.unistd.pread
    libc.src.unistd.pwrite
    libc.src.unistd.read
    libc.src.unistd.readlink
    libc.src.unistd.readlinkat
    libc.src.unistd.rmdir
    libc.src.unistd.symlink
    libc.src.unistd.symlinkat
    libc.src.unistd.sysconf
    libc.src.unistd.truncate
    libc.src.unistd.unlink
    libc.src.unistd.unlinkat
    libc.src.unistd.write

    # wchar.h entrypoints
    libc.src.wchar.wctob
)

if(LLVM_LIBC_INCLUDE_SCUDO)
  list(APPEND TARGET_LIBC_ENTRYPOINTS
    # malloc.h external entrypoints
    libc.src.stdlib.mallopt
  )
endif()

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.feraiseexcept
    libc.src.fenv.fesetenv
    libc.src.fenv.fesetexcept
    libc.src.fenv.fesetexceptflag
    libc.src.fenv.fesetround
    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.canonicalize
    libc.src.math.canonicalizef
    libc.src.math.canonicalizel
    libc.src.math.cbrt
    libc.src.math.cbrtf
    libc.src.math.ceil
    libc.src.math.ceilf
    libc.src.math.ceill
    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.daddl
    libc.src.math.ddivl
    libc.src.math.dfmal
    libc.src.math.dmull
    libc.src.math.dsqrtl
    libc.src.math.dsubl
    libc.src.math.erff
    libc.src.math.exp
    libc.src.math.exp10
    libc.src.math.exp10f
    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
    libc.src.math.floor
    libc.src.math.floorf
    libc.src.math.floorl
    libc.src.math.fma
    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.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.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
    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.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.remainder
    libc.src.math.remainderf
    libc.src.math.remainderl
    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
    libc.src.math.scalblnf
    libc.src.math.scalblnl
    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.sinf
    libc.src.math.sinhf
    libc.src.math.sinpif
    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.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_FLOAT16)
  list(APPEND TARGET_LIBM_ENTRYPOINTS
    # math.h C23 _Float16 entrypoints
    libc.src.math.canonicalizef16
    libc.src.math.ceilf16
    libc.src.math.copysignf16
    libc.src.math.cospif16
    # TODO: aarch64 bug
    # Please see https://github.com/llvm/llvm-project/pull/100632#issuecomment-2258772681
    # libc.src.math.expf16
    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.fdiv
    libc.src.math.fdivl
    libc.src.math.ffma
    libc.src.math.ffmal
    libc.src.math.floorf16
    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.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.logbf16
    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
    # Temporarily disable nexttowardf16 on aarch64 because the conversion
    # between _Float16 and long double will crash clang-11.  This is fixed in
    # clang-12 and after: https://godbolt.org/z/8ceT9454c
    # 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.sinpif16
    libc.src.math.sqrtf16
    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_FLOAT128)
  list(APPEND TARGET_LIBM_ENTRYPOINTS
    # math.h C23 _Float128 entrypoints
    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(LLVM_LIBC_FULL_BUILD)
  list(APPEND TARGET_LIBC_ENTRYPOINTS
    # assert.h entrypoints
    libc.src.assert.__assert_fail

    # compiler entrypoints (no corresponding header)
    libc.src.compiler.__stack_chk_fail

    # dirent.h entrypoints
    libc.src.dirent.closedir
    libc.src.dirent.dirfd
    libc.src.dirent.opendir
    libc.src.dirent.readdir

    # network.h entrypoints
    libc.src.network.htonl
    libc.src.network.htons
    libc.src.network.ntohl
    libc.src.network.ntohs

    # pthread.h entrypoints
    libc.src.pthread.pthread_atfork
    libc.src.pthread.pthread_attr_destroy
    libc.src.pthread.pthread_attr_getdetachstate
    libc.src.pthread.pthread_attr_getguardsize
    libc.src.pthread.pthread_attr_getstack
    libc.src.pthread.pthread_attr_getstacksize
    libc.src.pthread.pthread_attr_init
    libc.src.pthread.pthread_attr_setdetachstate
    libc.src.pthread.pthread_attr_setguardsize
    libc.src.pthread.pthread_attr_setstack
    libc.src.pthread.pthread_attr_setstacksize
    libc.src.pthread.pthread_condattr_destroy
    libc.src.pthread.pthread_condattr_getclock
    libc.src.pthread.pthread_condattr_getpshared
    libc.src.pthread.pthread_condattr_init
    libc.src.pthread.pthread_condattr_setclock
    libc.src.pthread.pthread_condattr_setpshared
    libc.src.pthread.pthread_create
    libc.src.pthread.pthread_detach
    libc.src.pthread.pthread_equal
    libc.src.pthread.pthread_exit
    libc.src.pthread.pthread_getname_np
    libc.src.pthread.pthread_getspecific
    libc.src.pthread.pthread_join
    libc.src.pthread.pthread_key_create
    libc.src.pthread.pthread_key_delete
    libc.src.pthread.pthread_mutex_destroy
    libc.src.pthread.pthread_mutex_init
    libc.src.pthread.pthread_mutex_lock
    libc.src.pthread.pthread_mutex_unlock
    libc.src.pthread.pthread_mutexattr_destroy
    libc.src.pthread.pthread_mutexattr_getpshared
    libc.src.pthread.pthread_mutexattr_getrobust
    libc.src.pthread.pthread_mutexattr_gettype
    libc.src.pthread.pthread_mutexattr_init
    libc.src.pthread.pthread_mutexattr_setpshared
    libc.src.pthread.pthread_mutexattr_setrobust
    libc.src.pthread.pthread_mutexattr_settype
    libc.src.pthread.pthread_once
    libc.src.pthread.pthread_rwlock_clockrdlock
    libc.src.pthread.pthread_rwlock_clockwrlock
    libc.src.pthread.pthread_rwlock_destroy
    libc.src.pthread.pthread_rwlock_init
    libc.src.pthread.pthread_rwlock_rdlock
    libc.src.pthread.pthread_rwlock_timedrdlock
    libc.src.pthread.pthread_rwlock_timedwrlock
    libc.src.pthread.pthread_rwlock_tryrdlock
    libc.src.pthread.pthread_rwlock_trywrlock
    libc.src.pthread.pthread_rwlock_unlock
    libc.src.pthread.pthread_rwlock_wrlock
    libc.src.pthread.pthread_rwlockattr_destroy
    libc.src.pthread.pthread_rwlockattr_getkind_np
    libc.src.pthread.pthread_rwlockattr_getpshared
    libc.src.pthread.pthread_rwlockattr_init
    libc.src.pthread.pthread_rwlockattr_setkind_np
    libc.src.pthread.pthread_rwlockattr_setpshared
    libc.src.pthread.pthread_spin_destroy
    libc.src.pthread.pthread_spin_init
    libc.src.pthread.pthread_spin_lock
    libc.src.pthread.pthread_spin_trylock
    libc.src.pthread.pthread_spin_unlock
    libc.src.pthread.pthread_self
    libc.src.pthread.pthread_setname_np
    libc.src.pthread.pthread_setspecific

    # sched.h entrypoints
    libc.src.sched.__sched_getcpucount

    # setjmp.h entrypoints
    libc.src.setjmp.longjmp
    libc.src.setjmp.setjmp

    # stdio.h entrypoints
    libc.src.stdio.clearerr
    libc.src.stdio.clearerr_unlocked
    libc.src.stdio.fclose
    libc.src.stdio.feof
    libc.src.stdio.feof_unlocked
    libc.src.stdio.ferror
    libc.src.stdio.ferror_unlocked
    libc.src.stdio.fflush
    libc.src.stdio.fgetc
    libc.src.stdio.fgetc_unlocked
    libc.src.stdio.fgets
    libc.src.stdio.flockfile
    libc.src.stdio.fopen
    libc.src.stdio.fopencookie
    libc.src.stdio.fputc
    libc.src.stdio.fputs
    libc.src.stdio.fread
    libc.src.stdio.fread_unlocked
    libc.src.stdio.fseek
    libc.src.stdio.fseeko
    libc.src.stdio.ftell
    libc.src.stdio.ftello
    libc.src.stdio.funlockfile
    libc.src.stdio.fwrite
    libc.src.stdio.fwrite_unlocked
    libc.src.stdio.getc
    libc.src.stdio.getc_unlocked
    libc.src.stdio.getchar
    libc.src.stdio.getchar_unlocked
    libc.src.stdio.putc
    libc.src.stdio.putchar
    libc.src.stdio.puts
    libc.src.stdio.setbuf
    libc.src.stdio.setvbuf
    libc.src.stdio.stderr
    libc.src.stdio.stdin
    libc.src.stdio.stdout
    libc.src.stdio.ungetc

    # stdlib.h entrypoints
    libc.src.stdlib._Exit
    libc.src.stdlib.abort
    libc.src.stdlib.at_quick_exit
    libc.src.stdlib.atexit
    libc.src.stdlib.exit
    libc.src.stdlib.getenv
    libc.src.stdlib.quick_exit

    # signal.h entrypoints
    libc.src.signal.kill
    libc.src.signal.raise
    libc.src.signal.sigaction
    libc.src.signal.sigaddset
    libc.src.signal.sigaltstack
    libc.src.signal.sigdelset
    libc.src.signal.sigemptyset
    libc.src.signal.sigfillset
    libc.src.signal.signal
    libc.src.signal.sigprocmask

    # spawn.h entrypoints
    libc.src.spawn.posix_spawn
    libc.src.spawn.posix_spawn_file_actions_addclose
    libc.src.spawn.posix_spawn_file_actions_adddup2
    libc.src.spawn.posix_spawn_file_actions_addopen
    libc.src.spawn.posix_spawn_file_actions_destroy
    libc.src.spawn.posix_spawn_file_actions_init

    # search.h entrypoints
    libc.src.search.hcreate
    libc.src.search.hcreate_r
    libc.src.search.hdestroy
    libc.src.search.hdestroy_r
    libc.src.search.hsearch
    libc.src.search.hsearch_r
    libc.src.search.insque
    libc.src.search.remque

    # threads.h entrypoints
    libc.src.threads.call_once
    libc.src.threads.cnd_broadcast
    libc.src.threads.cnd_destroy
    libc.src.threads.cnd_init
    libc.src.threads.cnd_signal
    libc.src.threads.cnd_wait
    libc.src.threads.mtx_destroy
    libc.src.threads.mtx_init
    libc.src.threads.mtx_lock
    libc.src.threads.mtx_unlock
    libc.src.threads.thrd_create
    libc.src.threads.thrd_current
    libc.src.threads.thrd_detach
    libc.src.threads.thrd_equal
    libc.src.threads.thrd_exit
    libc.src.threads.thrd_join
    libc.src.threads.tss_create
    libc.src.threads.tss_delete
    libc.src.threads.tss_get
    libc.src.threads.tss_set

    # time.h entrypoints
    libc.src.time.asctime
    libc.src.time.asctime_r
    libc.src.time.ctime
    libc.src.time.ctime_r
    libc.src.time.clock
    libc.src.time.clock_gettime
    libc.src.time.difftime
    libc.src.time.gettimeofday
    libc.src.time.gmtime
    libc.src.time.gmtime_r
    libc.src.time.mktime
    libc.src.time.nanosleep
    libc.src.time.time

    # unistd.h entrypoints
    libc.src.unistd.__llvm_libc_syscall
    libc.src.unistd._exit
    libc.src.unistd.environ
    libc.src.unistd.execv
    libc.src.unistd.fork
    libc.src.unistd.getopt
    libc.src.unistd.optarg
    libc.src.unistd.opterr
    libc.src.unistd.optind
    libc.src.unistd.optopt
    libc.src.unistd.swab

    # sys/select.h entrypoints
    libc.src.sys.select.select

    # sys/socket.h entrypoints
    libc.src.sys.socket.bind
    libc.src.sys.socket.socket
  )
endif()

set(TARGET_LLVMLIBC_ENTRYPOINTS
  ${TARGET_LIBC_ENTRYPOINTS}
  ${TARGET_LIBM_ENTRYPOINTS}
)
