rust/compiler/rustc_const_eval/src
bors f98598c6cd Auto merge of #108089 - Zoxc:windows-tls, r=bjorn3
Support TLS access into dylibs on Windows

This allows access to `#[thread_local]`  in upstream dylibs on Windows by introducing a MIR shim to return the address of the thread local. Accesses that go into an upstream dylib will call the MIR shim to get the address of it.

`convert_tls_rvalues` is introduced in `rustc_codegen_ssa` which rewrites MIR TLS accesses to dummy calls which are replaced with calls to the MIR shims when the dummy calls are lowered to backend calls.

A new `dll_tls_export` target option enables this behavior with a `false` value which is set for Windows platforms.

This fixes https://github.com/rust-lang/rust/issues/84933.
2023-03-29 16:20:37 +00:00
..
const_eval Refactor: VariantIdx::from_u32(0) -> FIRST_VARIANT 2023-03-25 18:58:25 -07:00
interpret Support TLS access into dylibs on Windows 2023-03-29 08:55:21 +02:00
transform Rename IndexVec::lastlast_index 2023-03-29 00:27:24 -07:00
util Allow checking whether a type allows being uninitialized 2023-03-02 18:33:48 +00:00
errors.rs errors: generate typed identifiers in each crate 2023-02-22 09:15:53 +00:00
lib.rs Simplify message paths 2023-03-11 22:51:57 +01:00