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.bcmp
    libc.src.string.bzero
    libc.src.string.memccpy
    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.strcasecmp
    libc.src.string.strcat
    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.strncasecmp
    libc.src.string.strncat
    libc.src.string.strncmp
    libc.src.string.strncpy
    libc.src.string.strnlen
    libc.src.string.strspn
    libc.src.string.strtok
    libc.src.string.strtok_r

    # 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.div
    libc.src.stdlib.labs
    libc.src.stdlib.ldiv
    libc.src.stdlib.llabs
    libc.src.stdlib.lldiv
    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 entrypoints
    libc.src.stdlib._Exit
    libc.src.stdlib.atexit
    libc.src.stdlib.exit

    # Only implemented in the test suite
    libc.src.stdlib.malloc
    libc.src.stdlib.aligned_alloc
    libc.src.stdlib.realloc
    libc.src.stdlib.free

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

    # stdio.h entrypoints
    libc.src.stdio.puts
    libc.src.stdio.fputs
    libc.src.stdio.fclose
    libc.src.stdio.fopen
    libc.src.stdio.stdin
    libc.src.stdio.stdout
    libc.src.stdio.stderr

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

    # gpu/rpc.h entrypoints
    libc.src.gpu.rpc_reset
    libc.src.gpu.rpc_host_call
)

set(TARGET_LIBM_ENTRYPOINTS
    # math.h entrypoints
    libc.src.math.fma
    libc.src.math.fmaf
    libc.src.math.sin
    libc.src.math.round
    libc.src.math.roundf
    libc.src.math.roundl
)

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