• R
    TLS (GNU/C11 thread-local storage) support for static-linked programs · 8431d797
    Rich Felker 提交于
    the design for TLS in dynamic-linked programs is mostly complete too,
    but I have not yet implemented it. cost is nonzero but still low for
    programs which do not use TLS and/or do not use threads (a few hundred
    bytes of new code, plus dependency on memcpy). i believe it can be
    made smaller at some point by merging __init_tls and __init_security
    into __libc_start_main and avoiding duplicate auxv-parsing code.
    
    at the same time, I've also slightly changed the logic pthread_create
    uses to allocate guard pages to ensure that guard pages are not
    counted towards commit charge.
    8431d797
dynlink.c 25.3 KB