libc is the macro, __libc is the internal symbol, but under some
configurations on old/broken compilers, the symbol might not actually
exist and the libc macro might instead use __libc_loc() to obtain
access to the object.
td = (pthread_t)mem;
mem += sizeof(struct pthread);
#else
- mem += __libc.tls_size - sizeof(struct pthread);
+ mem += libc.tls_size - sizeof(struct pthread);
mem -= (uintptr_t)mem & (align-1);
td = (pthread_t)mem;
td->dtv = dtv;