about summary refs log tree commit diff
path: root/tests/debuginfo/enum-thinlto.rs
diff options
context:
space:
mode:
authorquininer <quininer@live.com>2023-11-13 20:48:23 +0800
committerquininer <quininer@live.com>2023-12-07 00:21:32 +0800
commit2baa073fb1dc1a3556d174b58e5bc94b28682119 (patch)
treee25160e8829ff73ed40d538e17a9250da4452faa /tests/debuginfo/enum-thinlto.rs
parent8e13be084a316883b4aadabbc9ff08aaaf676aa6 (diff)
downloadrust-2baa073fb1dc1a3556d174b58e5bc94b28682119.tar.gz
rust-2baa073fb1dc1a3556d174b58e5bc94b28682119.zip
Add emulated TLS support
Currently LLVM uses emutls by default
for some targets (such as android, openbsd),
but rust does not use it, because `has_thread_local` is false.

This commit has some changes to allow users to enable emutls:

1. add `-Zhas-thread-local` flag to specify
    that std uses `#[thread_local]` instead of pthread key.
2. when using emutls, decorate symbol names
    to find thread local symbol correctly.
3. change `-Zforce-emulated-tls` to `-Ztls-model=emulated`
    to explicitly specify whether to generate emutls.
Diffstat (limited to 'tests/debuginfo/enum-thinlto.rs')
0 files changed, 0 insertions, 0 deletions