rust/src/librustc_interface
Nicholas Nethercote d93277b915 Remove GCX_PTR.
We store an `ImplicitCtxt` pointer in a thread-local value (TLV). This allows
implicit access to a `GlobalCtxt` and some other things.

We also store a `GlobalCtxt` pointer in `GCX_PTR`. This is always the same
`GlobalCtxt` as the one within the `ImplicitCtxt` pointer in TLV. `GCX_PTR`
is only used in the parallel compiler's `handle_deadlock()` function.

This commit does the following.
- It removes `GCX_PTR`.
- It also adds `ImplicitCtxt::new()`, which constructs an `ImplicitCtxt` from a
  `GlobalCtxt`. `ImplicitCtxt::new()` + `tls::enter_context()` is now
  equivalent to the old `tls::enter_global()`.
- Makes `tls::get_tlv()` public for the parallel compiler, because it's
  now used in `handle_deadlock()`.
2020-08-03 09:40:41 +10:00
..
callbacks.rs Show SyntaxContext in formatted Span debug output 2020-06-08 21:47:33 -04:00
Cargo.toml Move from log to tracing 2020-07-31 22:38:20 +02:00
interface.rs Change some function names. 2020-07-10 16:07:20 +10:00
lib.rs Initialize default providers only once 2020-07-15 10:53:36 -04:00
passes.rs Remove GCX_PTR. 2020-08-03 09:40:41 +10:00
proc_macro_decls.rs Use for<'tcx> fn pointers in Providers, instead of having Providers<'tcx>. 2020-07-05 23:00:14 +03:00
queries.rs Remove Compiler::compile(). 2020-07-07 11:10:51 +10:00
tests.rs Rollup merge of #73893 - ajpaverd:cfguard-stabilize, r=nikomatsakis 2020-07-22 09:29:03 -07:00
util.rs Remove GCX_PTR. 2020-08-03 09:40:41 +10:00