HomeFreeBSD

libc: Use the initial-exec TLS model

Description

libc: Use the initial-exec TLS model

This permits more efficient accesses of thread-local variables, which
are heavily used at least by jemalloc and locale-aware code. Note that
on amd64 and i386, jemalloc's thread-local variables already have their
TLS model overridden by defining JEMALLOC_TLS_MODEL.

For now the change is applied only to tested platforms, but should in
principle be enabled everywhere.

PR: 255840
Suggested by: jrtc27
Reviewed by: kib
MFC after: 2 months
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D31070

Details

Provenance
markjAuthored on Jul 16 2021, 2:35 AM
Reviewer
kib
Differential Revision
D31070: libc: Use the initial-exec TLS model for libc on amd64 and arm64
Parents
rGf238ebd14293: rtld/arm64: Remove checks for undefined symbols when processing TPREL64
Branches
Unknown
Tags
Unknown