os-rust/compiler
quininer e5b76892cc 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.
2023-12-07 00:21:32 +08:00
..
rustc Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_abi Rename LayoutCalculator::delay_bug as LayoutCalculator::delayed_bug. 2023-12-02 09:01:34 +11:00
rustc_arena Document reentrancy in *Arena::alloc_from_iter 2023-12-04 02:24:10 +01:00
rustc_ast Auto merge of #117912 - GeorgeWort:master, r=petrochenkov 2023-12-02 13:38:47 +00:00
rustc_ast_lowering rustc: Harmonize DefKind and DefPathData 2023-12-03 16:24:56 +03:00
rustc_ast_passes Auto merge of #118470 - nnethercote:cleanup-error-handlers, r=compiler-errors 2023-12-02 02:48:34 +00:00
rustc_ast_pretty Rollup merge of #118157 - Nadrieril:never_pat-feature-gate, r=compiler-errors 2023-11-29 12:34:47 +01:00
rustc_attr Use Session::diagnostic in more places. 2023-12-02 09:01:35 +11:00
rustc_baked_icu_data Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_borrowck Provide more suggestions for cloning immutable bindings 2023-12-04 21:54:34 +00:00
rustc_builtin_macros Auto merge of #118470 - nnethercote:cleanup-error-handlers, r=compiler-errors 2023-12-02 02:48:34 +00:00
rustc_codegen_cranelift Auto merge of #118279 - bjorn3:sync_cg_clif-2023-11-25, r=bjorn3 2023-11-25 13:08:29 +00:00
rustc_codegen_gcc Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_codegen_llvm Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_codegen_ssa Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_const_eval Rollup merge of #118565 - RalfJung:numeric_intrinsic, r=davidtwco 2023-12-04 20:46:09 +01:00
rustc_data_structures jobserver: check file descriptors 2023-11-29 18:00:03 +03:00
rustc_driver Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_driver_impl Auto merge of #118472 - nnethercote:rustc_session, r=bjorn3 2023-12-01 00:08:04 +00:00
rustc_error_codes Yeet E0744 2023-11-28 20:40:38 +00:00
rustc_error_messages Remove rustc_error_messages/messages.ftl. 2023-11-26 08:37:27 +11:00
rustc_errors Handler tweaks. 2023-12-02 09:01:34 +11:00
rustc_expand Use Session::diagnostic in more places. 2023-12-02 09:01:35 +11:00
rustc_feature Auto merge of #118470 - nnethercote:cleanup-error-handlers, r=compiler-errors 2023-12-02 02:48:34 +00:00
rustc_fluent_macro Add a useful comment. 2023-11-26 08:38:02 +11:00
rustc_fs_util Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_graphviz remove unused pub fn 2023-11-23 14:11:02 +03:00
rustc_hir rustc: Harmonize DefKind and DefPathData 2023-12-03 16:24:56 +03:00
rustc_hir_analysis Rename HandlerInner::delay_span_bug as HandlerInner::span_delayed_bug. 2023-12-02 09:01:19 +11:00
rustc_hir_pretty Add never_patterns feature gate 2023-11-29 03:58:29 +01:00
rustc_hir_typeck Deduplicate some logic 2023-12-04 21:54:33 +00:00
rustc_incremental Rename HandlerInner::delayed_span_bugs as HandlerInner::span_delayed_bugs. 2023-12-02 09:01:34 +11:00
rustc_index Replace no_ord_impl with orderable. 2023-11-22 18:38:17 +11:00
rustc_index_macros Put backticks around some attributes in doc comments. 2023-11-27 09:37:01 +11:00
rustc_infer cleanup and comments 2023-12-04 10:40:36 +01:00
rustc_interface Use Session::diagnostic in more places. 2023-12-02 09:01:35 +11:00
rustc_lexer Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_lint Auto merge of #118470 - nnethercote:cleanup-error-handlers, r=compiler-errors 2023-12-02 02:48:34 +00:00
rustc_lint_defs vis note for no pub reexports glob import 2023-12-01 12:10:07 +08:00
rustc_llvm Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_log rustc_log: provide a way to init logging based on the values, not names, of the env vars 2023-11-11 15:24:33 +01:00
rustc_macros Unify HashStable implementations 2023-11-21 05:49:45 +00:00
rustc_metadata Auto merge of #118488 - andjo403:remove_deadlock, r=SparrowLii 2023-12-05 14:02:15 +00:00
rustc_middle rustc: Harmonize DefKind and DefPathData 2023-12-03 16:24:56 +03:00
rustc_mir_build Auto merge of #118490 - Nadrieril:arena-alloc-matrix, r=nnethercote 2023-12-04 07:06:36 +00:00
rustc_mir_dataflow Deparameterize Results and ResultsCursor. 2023-11-27 10:35:43 +11:00
rustc_mir_transform Auto merge of #118230 - nnethercote:streamline-dataflow-cursors, r=cjgillot 2023-12-05 02:36:50 +00:00
rustc_monomorphize merge DefKind::Coroutine into DefKind::Closure 2023-11-26 21:05:08 +08:00
rustc_parse Auto merge of #118542 - chenyukang:yukang-fix-parser-ice-118531, r=cjgillot 2023-12-03 03:05:17 +00:00
rustc_parse_format Auto merge of #117819 - fmease:rustc_parse_format-stable-rustc, r=Nilstrieb 2023-11-15 14:55:35 +00:00
rustc_passes Rename HandlerInner::delay_span_bug as HandlerInner::span_delayed_bug. 2023-12-02 09:01:19 +11:00
rustc_privacy Auto merge of #118470 - nnethercote:cleanup-error-handlers, r=compiler-errors 2023-12-02 02:48:34 +00:00
rustc_query_impl QueryContext: rename try_collect_active_jobs -> collect_active_jobs and change it's return type from Option<QueryMap> to QueryMap 2023-11-27 18:13:15 +03:00
rustc_query_system Use Session::diagnostic in more places. 2023-12-02 09:01:35 +11:00
rustc_resolve Structured use suggestion on privacy error 2023-12-04 22:26:08 +00:00
rustc_serialize Call FileEncoder::finish in rmeta encoding 2023-11-22 22:49:22 -05:00
rustc_session Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_smir Add more information to stable Instance 2023-12-01 16:22:06 -08:00
rustc_span Rename HandlerInner::delay_span_bug as HandlerInner::span_delayed_bug. 2023-12-02 09:01:19 +11:00
rustc_symbol_mangling rustc: Harmonize DefKind and DefPathData 2023-12-03 16:24:56 +03:00
rustc_target Add emulated TLS support 2023-12-07 00:21:32 +08:00
rustc_trait_selection Deduplicate some logic 2023-12-04 21:54:33 +00:00
rustc_traits Auto merge of #118120 - compiler-errors:closure-kind, r=lcnr 2023-11-22 21:09:01 +00:00
rustc_transmute Update itertools to 0.11. 2023-11-22 08:13:21 +11:00
rustc_ty_utils Rollup merge of #118573 - petrochenkov:pathdatakind, r=TaKO8Ki 2023-12-04 21:19:45 +09:00
rustc_type_ir Auto merge of #118120 - compiler-errors:closure-kind, r=lcnr 2023-11-22 21:09:01 +00:00
stable_mir Add more information to stable Instance 2023-12-01 16:22:06 -08:00