Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
backport https://reviews.llvm.org/D107127 to fix shared libraries usi…
…ng emutls Our emulated TLS implementation relies on local state (e.g. for the pthread key), and if we duplicate this state across different shared libraries, accesses to the same TLS variable from different shared libraries will yield different results (see android/ndk#1551 for an example). __emutls_get_address is the only external entry point for emulated TLS, and by making it default visibility and weak, we can rely on the dynamic linker to coalesce multiple copies at runtime and ensure a single unique copy of TLS state. This is a best effort; Also bump the libc++abi minor because now it picks up the __emutls_get_address symbol. ok kettenis@
- Loading branch information