rust/src
bors b977e044a7 Auto merge of #48611 - michaelwoerister:share-generics2, r=alexcrichton
Don't recompute SymbolExportLevel for upstream crates.

The data collected in #48373 suggests that we can avoid generating up to 30% of the LLVM definitions by only instantiating function monomorphizations once with a given crate graph. Some more data, collected with a [proof-of-concept implementation](https://github.com/michaelwoerister/rust/commits/share-generics) of re-using monomorphizations, which is less efficient than the MIR-only RLIB approach, suggests that it's still around 25% LLVM definitions that we can save.

So far, this PR only cleans up handling of symbol export status. Too early to review still.
2018-03-06 11:52:16 +00:00
..
bootstrap Get the path to cargo from rustbuild 2018-03-05 14:43:44 -06:00
build_helper
ci Auto merge of #48630 - alexcrichton:more-sccache, r=kennytm 2018-03-04 07:09:41 +00:00
dlmalloc@9b2dcac06c Update the dlmalloc submodule 2018-02-10 07:01:27 -08:00
doc Rollup merge of #48359 - jsgf:remap-path-prefix, r=sanxiyn 2018-02-28 15:09:24 -08:00
etc rust: Import LLD for linking wasm objects 2018-03-03 20:21:35 -08:00
grammar
jemalloc@1f5a28755e
liballoc Don't have Vec<T> delegate to [T]'s bounds for indexing 2018-03-02 23:25:52 -05:00
liballoc_jemalloc
liballoc_system
libarena
libbacktrace fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}} 2018-02-10 12:22:57 +01:00
libcompiler_builtins@266ea0740a Update compiler-builtins to latest master. 2018-02-13 22:39:11 +01:00
libcore Auto merge of #48509 - Phlosioneer:option-doc-change, r=TimNN 2018-03-06 06:14:11 +00:00
libfmt_macros fix typos in src/{bootstrap,ci,etc,lib{backtrace,core,fmt_macros}} 2018-02-10 12:22:57 +01:00
libgetopts
libgraphviz
liblibc@56444a4545 Revert unintentional submodule updates 2018-02-18 00:21:33 +09:00
libpanic_abort rustc: Add an option to default hidden visibility 2018-01-30 13:41:20 -08:00
libpanic_unwind make `#[unwind]` attribute specify expectations more clearly 2018-02-20 19:12:52 -05:00
libproc_macro Impl !Send and !Sync for SourceFile 2018-03-02 10:48:52 +01:00
libprofiler_builtins
librustc Don't show crate metadata symbol as exported symbol to downstream crates. 2018-03-06 09:58:47 +01:00
librustc_allocator Fix up tests and typos 2018-02-18 00:10:40 +09:00
librustc_apfloat fix more typos found by codespell. 2018-02-17 17:38:49 +01:00
librustc_asan
librustc_back rustc: Tweak default linker selection 2018-03-03 20:21:35 -08:00
librustc_borrowck Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_const_eval Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_const_math
librustc_cratesio_shim
librustc_data_structures Auto merge of #48587 - Zoxc:transitive-relation, r=nikomatsakis 2018-03-04 09:41:32 +00:00
librustc_driver Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_errors Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
librustc_incremental Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_lint Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_llvm rustc: Persist LLVM's `Linker` in Fat LTO 2018-02-12 09:11:06 -08:00
librustc_lsan
librustc_metadata Don't show crate metadata symbol as exported symbol to downstream crates. 2018-03-06 09:58:47 +01:00
librustc_mir Rename exported_symbol_ids query to something more explicit and document what it is doing. 2018-03-06 09:47:43 +01:00
librustc_msan
librustc_passes Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
librustc_platform_intrinsics
librustc_plugin Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_privacy Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
librustc_resolve Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustc_save_analysis Rollup merge of #48490 - petrochenkov:orpat, r=eddyb 2018-02-24 15:52:17 -08:00
librustc_trans Don't show crate metadata symbol as exported symbol to downstream crates. 2018-03-06 09:58:47 +01:00
librustc_trans_utils Clean up handling of symbol export information. 2018-03-06 09:47:43 +01:00
librustc_tsan
librustc_typeck Turn features() into a query. 2018-03-05 11:05:01 +01:00
librustdoc Turn features() into a query. 2018-03-05 11:05:01 +01:00
libserialize Fix Decodable impl for Arc 2018-03-02 10:45:32 +01:00
libstd Rollup merge of #48513 - alexcrichton:simd, r=JoshTriplett 2018-03-04 02:17:38 +08:00
libstd_unicode impl Clone for ::std_unicode::char::{ToLowercase, ToUppercase} 2018-02-28 20:58:16 -08:00
libsyntax Turn features() into a query. 2018-03-05 11:05:01 +01:00
libsyntax_ext Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
libsyntax_pos Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
libterm
libtest re-export `assert_test_result` for use when testing libtest itself 2018-02-23 10:11:06 -05:00
libunwind make `#[unwind]` attribute specify expectations more clearly 2018-02-20 19:12:52 -05:00
llvm@ba2edd794c Update LLVM submodule a bit further 2018-02-28 13:21:14 -08:00
llvm-emscripten@2717444753
rtstartup
rustc
rustllvm rustc: Persist LLVM's `Linker` in Fat LTO 2018-02-12 09:11:06 -08:00
stdsimd@678cbd325c std: Add `arch` and `simd` modules 2018-03-02 14:34:07 -08:00
test Fix procedural_mbe_matching test case after libsyntax change. 2018-03-05 11:05:01 +01:00
tools Add ena to whitelist 2018-03-05 14:43:44 -06:00
Cargo.lock Start adding a whitelist for rustc dependencies 2018-03-05 14:43:44 -06:00
Cargo.toml Convert python script to rust 2018-02-08 10:53:09 +01:00
README.md Start moving to the rustc guide! 2018-02-23 13:20:56 -06:00
stage0.txt Bootstrap from the 1.25 beta 2018-02-20 08:52:33 -07:00

README.md

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

  • rustc and its tests
  • libstd
  • Various submodules for tools, like rustdoc, rls, etc.

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

Their is also useful content in the following READMEs, which are gradually being moved over to the guide: