[libc] Enable a few stdlib and time functions on aarch64.

This commit is contained in:
Siva Chandra 2022-07-14 14:37:24 -07:00
parent b032e3ff61
commit 98fdabecf5
3 changed files with 14 additions and 1 deletions

View file

@ -245,6 +245,12 @@ if(LLVM_LIBC_FULL_BUILD)
libc.src.stdio.stderr
libc.src.stdio.stdout
# stdlib.h entrypoints
libc.src.stdlib._Exit
libc.src.stdlib.atexit
libc.src.stdlib.exit
libc.src.stdlib.getenv
# threads.h entrypoints
libc.src.threads.call_once
libc.src.threads.cnd_broadcast
@ -290,6 +296,13 @@ if(LLVM_LIBC_FULL_BUILD)
libc.src.pthread.pthread_mutexattr_setpshared
libc.src.pthread.pthread_mutexattr_setrobust
libc.src.pthread.pthread_mutexattr_settype
# time.h entrypoints
libc.src.time.asctime
libc.src.time.asctime_r
libc.src.time.gmtime
libc.src.time.gmtime_r
libc.src.time.mktime
)
endif()

View file

@ -259,7 +259,6 @@ if(LLVM_LIBC_FULL_BUILD)
# stdlib.h entrypoints
libc.src.stdlib._Exit
# libc.src.stdlib.abort
libc.src.stdlib.atexit
libc.src.stdlib.exit
libc.src.stdlib.getenv

View file

@ -118,6 +118,7 @@ extern "C" void _start() {
// value. We step over it (the "+ 1" below) to get to the env values.
uint64_t *env_ptr = app.args->argv + app.args->argc + 1;
uint64_t *env_end_marker = env_ptr;
app.envPtr = env_ptr;
while (*env_end_marker)
++env_end_marker;