musl/src
Rich Felker 23614b0fcb add C11 thread creation and related thread functions
based on patch by Jens Gustedt.

the main difficulty here is handling the difference between start
function signatures and thread return types for C11 threads versus
POSIX threads. pointers to void are assumed to be able to represent
faithfully all values of int. the function pointer for the thread
start function is cast to an incorrect type for passing through
pthread_create, but is cast back to its correct type before calling so
that the behavior of the call is well-defined.

changes to the existing threads implementation were kept minimal to
reduce the risk of regressions, and duplication of code that carries
implementation-specific assumptions was avoided for ease and safety of
future maintenance.
2014-09-07 10:28:08 -04:00
..
aio add missing legacy LFS *64 symbol aliases 2014-09-05 16:02:22 -04:00
complex complex: add C11 CMPLX macros and replace cpack with them 2012-11-13 01:31:49 +01:00
conf fix off-by-one in bounds check in fpathconf 2014-09-05 14:01:13 -04:00
crypt add legacy functions setkey() and encrypt() 2014-02-05 11:09:53 -05:00
ctype fix case mapping for U+00DF (ß) 2014-09-05 03:28:00 -04:00
dirent add missing legacy LFS *64 symbol aliases 2014-09-05 16:02:22 -04:00
env fix #ifdef inside a macro argument list in __init_tls.c 2014-08-13 17:07:44 +02:00
errno add support for LC_TIME and LC_MESSAGES translations 2014-07-26 05:36:25 -04:00
exit remove useless infinite loop from end of exit function 2014-07-17 21:37:10 -04:00
fcntl avoid invalid use of va_arg in open 2014-06-06 15:43:16 -04:00
fenv add nofpu subarchs to the sh arch, and properly detect compiler's fpu config 2014-02-27 23:18:42 -05:00
internal add C11 thread creation and related thread functions 2014-09-07 10:28:08 -04:00
ipc semctl: fix UB causing crashes on powerpc 2014-03-13 20:52:34 +01:00
ldso add dlerror message for static-linked dlsym failure 2014-08-08 00:53:27 -04:00
legacy fix multiple issues in legacy function getpass 2014-07-06 01:34:13 -04:00
linux fix missing argument to syscall in fanotify_mark 2014-06-14 00:10:16 -04:00
locale fix non-static dummy function that slipped in with locale implementation 2014-09-06 08:40:20 -04:00
malloc add malloc_usable_size function and non-stub malloc.h 2014-08-25 22:47:27 -04:00
math math: fix aliasing violation in long double wrappers 2014-04-11 18:07:08 +02:00
misc make endmntent function handle null argument 2014-08-08 00:45:10 -04:00
mman use weak symbols for the POSIX functions that will be used by C threads 2014-09-06 18:11:24 -04:00
mq use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
multibyte fix aliasing violations in mbtowc and mbrtowc 2014-07-01 18:27:19 -04:00
network fix potential read past end of buffer in getnameinfo service name lookup 2014-09-05 13:52:20 -04:00
passwd include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
prng fix initstate to make the state buffer usable in setstate 2014-01-21 02:01:35 +01:00
process eliminate use of cached pid from thread structure 2014-07-05 23:29:55 -04:00
regex fix memory leak in regexec when input contains illegal sequence 2014-09-05 15:12:34 -04:00
sched remove useless __yield alias for sched_yield 2014-05-04 13:15:27 -04:00
search remove struct elem entirely from hsearch.c 2014-04-02 18:49:24 -04:00
select support linux kernel apis (new archs) with old syscalls removed 2014-05-29 21:01:32 -04:00
setjmp add or1k (OpenRISC 1000) architecture port 2014-07-18 14:10:23 -04:00
signal add or1k (OpenRISC 1000) architecture port 2014-07-18 14:10:23 -04:00
stat fix missing flags arg to fstatat syscall in fstat fallback path 2014-07-18 15:24:04 -04:00
stdio fix multiple stdio functions' behavior on zero-length operations 2014-09-04 22:21:17 -04:00
stdlib include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
string add support for LC_TIME and LC_MESSAGES translations 2014-07-26 05:36:25 -04:00
temp include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
termios include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
thread add C11 thread creation and related thread functions 2014-09-07 10:28:08 -04:00
time add C11 timespec_get function, with associated time.h changes for C11 2014-09-06 12:58:09 -04:00
unistd support linux kernel apis (new archs) with old syscalls removed 2014-05-29 21:01:32 -04:00