[llvm-bugs] [Bug 52497] New: Merge b8f04a670f27a84412099dd025fa762ee58f4c1a into 13.0.1
via llvm-bugs
llvm-bugs at lists.llvm.org
Sat Nov 13 10:08:51 PST 2021
https://bugs.llvm.org/show_bug.cgi?id=52497
Bug ID: 52497
Summary: Merge b8f04a670f27a84412099dd025fa762ee58f4c1a into
13.0.1
Product: compiler-rt
Version: unspecified
Hardware: All
OS: OpenBSD
Status: NEW
Severity: release blocker
Priority: P
Component: builtins
Assignee: unassignedbugs at nondot.org
Reporter: brad at comstyle.com
CC: llvm-bugs at lists.llvm.org
Blocks: 52147
Please merge
https://github.com/llvm/llvm-project/commit/b8f04a670f27a84412099dd025fa762ee58f4c1a.
[PATCH] [builtins] Try to ensure single copy of emulated TLS state
Multiple copies of emulated TLS state means inconsistent results when
accessing the same thread-local variable from different shared objects
(https://github.com/android/ndk/issues/1551). Making `__emutls_get_address`
be a weak default visibility symbol should make the dynamic linker
ensure only a single copy gets used at runtime. This is best-effort, but
the more robust approach of putting emulated TLS into its own shared
object would (a) be a much bigger change, and (b) shared objects are
pretty heavyweight, and adding a new one to a space-constrained
environment isn't an easy sell. Given the expected rarity of direct
accesses to emulated TLS variables across different shared objects, the
best-effort approach should suffice.
Referenced Bugs:
https://bugs.llvm.org/show_bug.cgi?id=52147
[Bug 52147] [meta] 13.0.1 Release Blockers
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20211113/749ffe35/attachment.html>
More information about the llvm-bugs
mailing list