about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2019-02-10Re-blessed tests.Alexander Regueiro-1/+3
2019-02-10tools: doc commentsAlexander Regueiro-30/+30
2019-02-10libs: doc commentsAlexander Regueiro-387/+394
2019-02-10tests: doc commentsAlexander Regueiro-164/+164
2019-02-10rustc: doc commentsAlexander Regueiro-2241/+2260
2019-02-10Auto merge of #58129 - RalfJung:maybe-uninit, r=cramertjbors-16/+65
MaybeUninit: some docs, rename into_inner -> into_initialized, return &mut from set
2019-02-10fix SGX build failuresRalf Jung-2/+2
2019-02-10it is okay not to use into_innerRalf Jung-0/+1
2019-02-10Auto merge of #58151 - ljedrz:HirIdify_rustc, r=Zoxcbors-33/+30
Partially HirId-ify rustc Another step towards https://github.com/rust-lang/rust/pull/57578.
2019-02-10Auto merge of #58085 - wesleywiser:profiler_2, r=wesleywiserbors-182/+363
Implement more detailed self profiling Timing data and cache hits/misses are now recorded at the query level. This allows us to show detailed per query information such as total time for each query. To see detailed query information in the summary pass the `-Z verbose` flag. For example: ``` rustc -Z self-profile -Z verbose hello_world.rs ``` results in something like: ```md Self profiling results: | Phase | Time (ms) | Time (%) | Queries | Hits (%) | ----------------------------------------- | -------------- | -------- | -------------- | -------- | Other | 177 | 54.97 | 8094 | 45.47 | - {time spent not running queries} | 113 | 35.09 | 0 | 0.00 | - const_eval | 16 | 4.97 | 26 | 11.54 | - type_of | 9 | 2.80 | 627 | 27.75 | - const_eval_raw | 8 | 2.48 | 22 | 0.00 | - adt_def | 7 | 2.17 | 381 | 11.55 | - visible_parent_map | 7 | 2.17 | 99 | 98.99 | - item_attrs | 6 | 1.86 | 698 | 50.14 | - item_children | 5 | 1.55 | 2815 | 0.00 | - adt_dtorck_constraint | 4 | 1.24 | 2 | 0.00 | - adt_destructor | 2 | 0.62 | 15 | 86.67 | TypeChecking | 53 | 16.46 | 2834 | 79.89 | - trait_impls_of | 9 | 2.80 | 65 | 86.15 | - evaluate_obligation | 7 | 2.17 | 80 | 2.50 | - const_is_rvalue_promotable_to_static | 6 | 1.86 | 1 | 0.00 | - is_copy_raw | 6 | 1.86 | 29 | 58.62 | - rvalue_promotable_map | 6 | 1.86 | 2 | 50.00 | - {time spent not running queries} | 6 | 1.86 | 0 | 0.00 | - typeck_item_bodies | 5 | 1.55 | 1 | 0.00 | - typeck_tables_of | 5 | 1.55 | 19 | 94.74 | - dropck_outlives | 2 | 0.62 | 1 | 0.00 | - layout_raw | 1 | 0.31 | 668 | 87.87 | Linking | 48 | 14.91 | 43 | 46.51 | - {time spent not running queries} | 48 | 14.91 | 0 | 0.00 | Codegen | 29 | 9.01 | 420 | 61.90 | - {time spent not running queries} | 16 | 4.97 | 0 | 0.00 | - collect_and_partition_mono_items | 11 | 3.42 | 13 | 92.31 | - mir_const | 1 | 0.31 | 1 | 0.00 | - mir_validated | 1 | 0.31 | 3 | 66.67 | Expansion | 14 | 4.35 | 0 | 0.00 | - {time spent not running queries} | 14 | 4.35 | 0 | 0.00 | BorrowChecking | 1 | 0.31 | 12 | 41.67 | - borrowck | 1 | 0.31 | 2 | 50.00 | Parsing | 0 | 0.00 | 0 | 0.00 Optimization level: No Incremental: off ``` <details> <summary>Rendered</summary> Self profiling results: | Phase | Time (ms) | Time (%) | Queries | Hits (%) | ----------------------------------------- | -------------- | -------- | -------------- | -------- | **Other** | **177** | **54.97** | **8094** | **45.47** | - {time spent not running queries} | 113 | 35.09 | 0 | 0.00 | - const_eval | 16 | 4.97 | 26 | 11.54 | - type_of | 9 | 2.80 | 627 | 27.75 | - const_eval_raw | 8 | 2.48 | 22 | 0.00 | - adt_def | 7 | 2.17 | 381 | 11.55 | - visible_parent_map | 7 | 2.17 | 99 | 98.99 | - item_attrs | 6 | 1.86 | 698 | 50.14 | - item_children | 5 | 1.55 | 2815 | 0.00 | - adt_dtorck_constraint | 4 | 1.24 | 2 | 0.00 | - adt_destructor | 2 | 0.62 | 15 | 86.67 | TypeChecking | 53 | 16.46 | 2834 | 79.89 | - trait_impls_of | 9 | 2.80 | 65 | 86.15 | - evaluate_obligation | 7 | 2.17 | 80 | 2.50 | - const_is_rvalue_promotable_to_static | 6 | 1.86 | 1 | 0.00 | - is_copy_raw | 6 | 1.86 | 29 | 58.62 | - rvalue_promotable_map | 6 | 1.86 | 2 | 50.00 | - {time spent not running queries} | 6 | 1.86 | 0 | 0.00 | - typeck_item_bodies | 5 | 1.55 | 1 | 0.00 | - typeck_tables_of | 5 | 1.55 | 19 | 94.74 | - dropck_outlives | 2 | 0.62 | 1 | 0.00 | - layout_raw | 1 | 0.31 | 668 | 87.87 | Linking | 48 | 14.91 | 43 | 46.51 | - {time spent not running queries} | 48 | 14.91 | 0 | 0.00 | Codegen | 29 | 9.01 | 420 | 61.90 | - {time spent not running queries} | 16 | 4.97 | 0 | 0.00 | - collect_and_partition_mono_items | 11 | 3.42 | 13 | 92.31 | - mir_const | 1 | 0.31 | 1 | 0.00 | - mir_validated | 1 | 0.31 | 3 | 66.67 | Expansion | 14 | 4.35 | 0 | 0.00 | - {time spent not running queries} | 14 | 4.35 | 0 | 0.00 | BorrowChecking | 1 | 0.31 | 12 | 41.67 | - borrowck | 1 | 0.31 | 2 | 50.00 | Parsing | 0 | 0.00 | 0 | 0.00 Optimization level: No Incremental: off </details> cc @nikomatsakis @michaelwoerister @Zoxc Fixes #54141
2019-02-10Auto merge of #58103 - RalfJung:mir-shim-dump, r=eddybbors-130/+173
Make -Zdump-mir dump shims Fixes https://github.com/rust-lang/rust/issues/53532 by (a) making the MIR shim generation use the MIR pass infrastructure, and (b) fixing said infrastructure to handle the fallout. Cc @eddyb @oli-obk
2019-02-10Auto merge of #58339 - Mark-Simulacrum:embedded-book, r=Mark-Simulacrumbors-0/+1
Add EmbeddedBook to test list in bootstrap r? @alexcrichton
2019-02-09Add EmbeddedBook to test list in bootstrapMark Rousskov-0/+1
2019-02-10Auto merge of #57770 - Zoxc:no-hash-query, r=michaelwoeristerbors-215/+260
Add a query type which is always marked as red if it runs This is useful for queries which produce results which are very likely to change if their inputs do. I also expect this to be useful for end to end queries because 1) we don't need `HashStable` impls and 2) we avoid the overhead of hashing the result of large results like the AST or the HIR map. r? @michaelwoerister
2019-02-09Auto merge of #58065 - alexreg:refactor-smart_resolve_path_fragment, ↵bors-389/+423
r=petrochenkov Factor out error reporting from `smart_resolve_path_fragment` fn This function was ridiculously monolithic before. We now have three rather-less-monolithic-and-horrifying functions. r? @centril
2019-02-09Auto merge of #57944 - estebank:unclosed-delim-the-quickening, r=oli-obkbors-157/+332
Deduplicate mismatched delimiter errors Delay unmatched delimiter errors until after the parser has run to deduplicate them when parsing and attempt recovering intelligently. Second attempt at #54029, follow up to #53949. Fix #31528.
2019-02-09Auto merge of #57885 - arielb1:xform-probe, r=nikomatsakisbors-7/+402
Avoid committing to autoderef in object method probing This fixes the "leak" introduced in #57835 (see test for details, also apparently #54252 had no tests for the "leaks" that were fixed in it, so go ahead and add one). Maybe beta-nominating because regression, but I'm against landing things on beta we don't have to. r? @nikomatsakis
2019-02-09Auto merge of #58207 - nnethercote:intern_lazy_const, r=oli-obkbors-38/+40
Make `intern_lazy_const` actually intern its argument. Currently it just unconditionally allocates it in the arena. For a "Clean Check" build of the the `packed-simd` benchmark, this change reduces both the `max-rss` and `faults` counts by 59%; it slightly (~3%) increases the instruction counts but the `wall-time` is unchanged. For the same builds of a few other benchmarks, `max-rss` and `faults` drop by 1--5%, but instruction counts and `wall-time` changes are in the noise. Fixes #57432, fixes #57829.
2019-02-09fix rebase falloutRalf Jung-40/+45
2019-02-09fix printing closuresRalf Jung-20/+18
2019-02-09fix node classificationRalf Jung-15/+19
2019-02-09fix --emit=mir: StructCtors are functionsRalf Jung-2/+5
2019-02-09disambiguate filenames of multiple drop shims being dumpedRalf Jung-1/+20
2019-02-09pass full InstanceDef to run_passesRalf Jung-55/+60
2019-02-09fix rebase fallout: AnonConsts are Consts, and Methods are functionsRalf Jung-4/+7
2019-02-09fix dumping MIR from another crateRalf Jung-14/+15
2019-02-09use pass infrastructure for mir shims, so that they can get dumpedRalf Jung-8/+13
2019-02-09Auto merge of #57617 - mark-i-m:multiple-matcher-bindings, r=petrochenkovbors-38/+171
Error on duplicate matcher bindings fix #57593 This should not be merged without a crater run and maybe an FCP. Discussion is ongoing at #57593. TODO: - [x] write tests - [x] crater run - [x] ~maybe need edition gating?~ not for 1 regression /centril r? @petrochenkov
2019-02-09Auto merge of #57184 - varkor:deny-warnings-lib, r=Mark-Simulacrumbors-2/+1
Deny warnings in libcore and libstd This probably fixes https://github.com/rust-lang/rust/issues/57178 (though there may still be some crates that need warnings denied). At least after this change, rustc currently produces no warnings during compilation. r? @oli-obk
2019-02-09Rollup merge of #58312 - taiki-e:librustc_data_structures-2018, r=CentrilMazdak Farrokhzad-107/+86
librustc_data_structures => 2018 Transitions `librustc_data_structures` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58285 - taiki-e:error_index_generator-2018, r=CentrilMazdak Farrokhzad-1/+3
error_index_generator => 2018 Transitions `error_index_generator` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58275 - RalfJung:miri-test-libcore, r=Mark-SimulacrumMazdak Farrokhzad-0/+81
libcore, liballoc: disable tests in Miri I am going to run the libcore and liballoc unit test suites in Miri. Not all tests pass. This PR disables a whole bunch of tests when running in Miri, to get us to a baseline from which I can investigate failures. Cc @SimonSapin @alexcrichton
2019-02-09Rollup merge of #58265 - taiki-e:librustc_mir-2018, r=matthewjasperMazdak Farrokhzad-519/+520
librustc_mir => 2018 Transitions `librustc_mir` to Rust 2018; cc #58099 TODO: ~~elided_lifetimes_in_paths~~ r? @Centril
2019-02-09Rollup merge of #58261 - taiki-e:librustc_incremental-2018, r=CentrilMazdak Farrokhzad-32/+29
librustc_incremental => 2018 Transitions `librustc_incremental` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58260 - taiki-e:librustc_borrowck-2018, r=CentrilMazdak Farrokhzad-69/+71
librustc_borrowck => 2018 Transitions `librustc_borrowck` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58259 - taiki-e:librustc_codegen_utils-2018, r=CentrilMazdak Farrokhzad-23/+18
librustc_codegen_utils => 2018 Transitions `librustc_codegen_utils` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58257 - taiki-e:librustc_target-2018, r=CentrilMazdak Farrokhzad-220/+221
librustc_target => 2018 Transitions `librustc_target` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58256 - taiki-e:librustc_cratesio_shim-2018, r=CentrilMazdak Farrokhzad-0/+3
librustc_cratesio_shim => 2018 Transitions `librustc_cratesio_shim` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58255 - taiki-e:librustc_metadata-2018, r=CentrilMazdak Farrokhzad-66/+67
librustc_metadata => 2018 Transitions `librustc_metadata` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58251 - h-michael:librustc_traits-2018, r=CentrilMazdak Farrokhzad-23/+20
Transition librustc_traits to 2018 edition Transitions librustc_traits to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58247 - taiki-e:librustc_passes-2018, r=CentrilMazdak Farrokhzad-22/+23
librustc_passes => 2018 Transitions `librustc_passes` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58245 - taiki-e:librustc_lint-2018, r=CentrilMazdak Farrokhzad-100/+108
librustc_lint => 2018 Transitions `librustc_lint` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58233 - taiki-e:librustc_save_analysis-2018, r=CentrilMazdak Farrokhzad-82/+79
librustc_save_analysis => 2018 Transitions `librustc_save_analysis` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58222 - taiki-e:librustc_allocator-2018, r=CentrilMazdak Farrokhzad-15/+7
librustc_allocator => 2018 Transitions `librustc_allocator` to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58120 - h-michael:build_helper-theme-2018, r=CentrilMazdak Farrokhzad-0/+3
Transition build_helper to 2018 edition Transitions build_helper to Rust 2018; cc #58099 r? @Centril
2019-02-09Rollup merge of #58115 - h-michael:rustdoc-2018, r=CentrilMazdak Farrokhzad-2/+3
Transition rustdoc to 2018 edition Transitions rustdoc to Rust 2018; cc #58099
2019-02-09Rollup merge of #58091 - phansch:compiletest2018, r=CentrilMazdak Farrokhzad-47/+39
Transition compiletest to Rust 2018 This transitions `src/tools/compiletest` to Rust 2018. cc #58099
2019-02-08Auto merge of #58161 - davidtwco:issue-57960, r=arielb1bors-4/+68
Lower constant patterns with ascribed types. Fixes #57960. This PR fixes a bug introduced by #55937 which started checking user type annotations for associated type patterns. Where lowering a associated constant expression would previously return a `PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType` with a `PatternKind::Constant` inside, this PR unwraps that to access the constant pattern inside and behaves as before. r? @pnkfelix
2019-02-09librustc_data_structures => 2018Taiki Endo-107/+86
2019-02-08Deny warnings in std stage 0varkor-2/+1