rust/src
bors 18f3be7704 Auto merge of #75278 - cuviper:indexmap, r=Mark-Simulacrum
Upgrade indexmap and use it more

First this upgrades `indexmap` to 1.5.1, which is now based on `hashbrown::raw::RawTable`. This means it shares a lot of the same performance characteristics for insert, lookup, etc., while keeping items in insertion order.

Then across various rustc crates, this replaces a lot of `Vec`+`HashMap` pairs with a single `IndexMap` or `IndexSet`.

Closes #60608.
r? @eddyb
2020-08-09 20:08:50 +00:00
..
bootstrap Auto merge of #75111 - mati865:use-lld-option, r=Mark-Simulacrum 2020-08-04 05:37:44 +00:00
build_helper build: Harden env var tracking in build scripts 2020-07-22 19:51:19 +03:00
ci ci: disable fail-fast on auto-fallible 2020-08-04 11:14:28 +02:00
doc Update books 2020-08-04 16:45:19 -07:00
etc Handle new HashMap layout in CDB, MSVC, WinDbg, etc. 2020-08-07 07:03:15 +01:00
librustc_apfloat
librustc_arena
librustc_ast Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_ast_lowering Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_ast_passes Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_ast_pretty Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_attr Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_builtin_macros Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_codegen_llvm rustc_codegen_llvm: use IndexSet in CoverageMapGenerator 2020-08-09 12:25:21 -07:00
librustc_codegen_ssa Auto merge of #74533 - nikic:issue-74425, r=eddyb 2020-08-08 13:33:53 +00:00
librustc_data_structures rustc_data_structures: use IndexSet in TransitiveRelation 2020-08-09 12:25:21 -07:00
librustc_driver Remove some unnecessary uses of Option. 2020-08-08 12:02:45 +10:00
librustc_error_codes Rollup merge of #75292 - slanterns:cleanup-E0502, r=GuillaumeGomez 2020-08-09 06:41:39 +09:00
librustc_errors Show backtrace numbers in backtrace whenever more than one is involved 2020-08-05 11:05:12 -04:00
librustc_expand Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_feature fix min_const_generics version 2020-08-08 13:35:42 +02:00
librustc_fs_util
librustc_graphviz
librustc_hir Eliminate librustc_hir's dependency on librustc_session. 2020-08-08 12:03:44 +10:00
librustc_hir_pretty Remove lots of Symbol::as_str() calls. 2020-07-15 09:01:35 +10:00
librustc_incremental Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_index mir: use FiniteBitSet<u32> in polymorphization 2020-08-04 18:30:53 +01:00
librustc_infer fix clippy::needless_return: remove unneeded return statements 2020-08-08 00:57:37 +02:00
librustc_interface Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_lexer Rollup merge of #73856 - pierwill:pierwill-lexer-doc, r=jonas-schievink 2020-07-06 17:45:17 -07:00
librustc_lint Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_llvm Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_macros Enforce the static symbol order. 2020-07-16 16:53:24 +10:00
librustc_metadata Auto merge of #75278 - cuviper:indexmap, r=Mark-Simulacrum 2020-08-09 20:08:50 +00:00
librustc_middle rustc_middle: use IndexSet in OnDiskCache 2020-08-09 12:25:22 -07:00
librustc_mir rustc_mir: use IndexSet in PlaceholderIndices 2020-08-09 12:25:22 -07:00
librustc_mir_build rustc_mir_build: use IndexMap in TestKind::SwitchInt 2020-08-09 12:25:22 -07:00
librustc_parse Auto merge of #75276 - JohnTitor:rollup-rz4hs0w, r=JohnTitor 2020-08-08 03:54:33 +00:00
librustc_parse_format fix clippy::map_identity: remove redundant .map(|x| x) call 2020-08-07 22:47:32 +02:00
librustc_passes Eliminate librustc_hir's dependency on librustc_session. 2020-08-08 12:03:44 +10:00
librustc_plugin_impl Increase recursion_limit in librustc_plugin_impl. 2020-08-08 12:05:10 +10:00
librustc_privacy Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_query_system Auto merge of #75055 - cjgillot:clean-cache, r=oli-obk 2020-08-03 03:37:33 +00:00
librustc_resolve Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_save_analysis Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_serialize
librustc_session Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_span Auto merge of #75278 - cuviper:indexmap, r=Mark-Simulacrum 2020-08-09 20:08:50 +00:00
librustc_symbol_mangling Eliminate the SessionGlobals from librustc_ast. 2020-08-08 12:03:42 +10:00
librustc_target Remove the --no-threads workaround for wasm targets. 2020-08-04 13:31:08 -07:00
librustc_trait_selection Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
librustc_traits fix clippy::needless_return: remove unneeded return statements 2020-08-08 00:57:37 +02:00
librustc_ty fix clippy::into_iter_on_ref: use .iter() instead of into_iter() on references. 2020-08-08 00:57:15 +02:00
librustc_typeck rustc_typeck: use IndexSet in InteriorVisitor 2020-08-09 12:25:22 -07:00
librustdoc Auto merge of #74932 - nnethercote:rm-ast-session-globals, r=petrochenkov 2020-08-08 05:58:57 +00:00
llvm-project@86b120e6f3 Update llvm-project to latest origin/rustc/10.0-2020-05-05 commit which includes LVI segfault fix 2020-07-12 18:49:14 +00:00
rustc
rustllvm Fixed coverage map issues; better aligned with LLVM APIs 2020-07-25 07:39:51 -07:00
test tests: Mark ui/asm/bad-arch.rs as requiring wasm llvm backend 2020-08-09 11:40:48 +03:00
tools Remove E0750 from unchecked error codes 2020-08-08 21:18:05 +02:00
README.md Update outdated readme 2020-07-27 22:05:34 -05:00
stage0.txt Bump to 1.47 2020-07-16 19:36:49 -04:00

This directory contains the source code of the rust project, including:

  • rustc and its tests
  • The bootstrapping build system
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.