about summary refs log tree commit diff
path: root/src/librustc/util
AgeCommit message (Collapse)AuthorLines
2019-03-15rustc: make ppaux' print macro use only one closure.Eduard-Mihai Burtescu-2/+5
2019-03-15rustc: move `...::<impl ...>` printing into `pretty_path_qualified`.Eduard-Mihai Burtescu-1/+1
2019-03-15rustc: move <...>-less impl path special-case to pretty_path_qualified.Eduard-Mihai Burtescu-1/+1
2019-03-15rustc: merge PrintCx::parameterized and def_path printing.Eduard-Mihai Burtescu-160/+97
2019-03-15rustc: integrate LocalPathPrinter's behavior into FmtPrinter.Eduard-Mihai Burtescu-21/+14
2019-03-15rustc: rename item_path to def_path (except the module in ty).Eduard-Mihai Burtescu-7/+7
2019-03-15rustc: pass Option<&Substs> and Namespace around in ty::item_path.Eduard-Mihai Burtescu-14/+6
2019-03-15rustc: explicitly pass the namespace to PrintCx::parameterized.Eduard-Mihai Burtescu-34/+45
2019-03-15rustc: move the formatter into ty::print::PrintCx.Eduard-Mihai Burtescu-335/+327
2019-03-15rustc: add a ty::RegionKind::display_outputs_anything method to avoid ↵Eduard-Mihai Burtescu-22/+120
printing to a string.
2019-03-15rustc: always rely on '_ to be not printed by ty::Region itself.Eduard-Mihai Burtescu-69/+58
2019-03-15rustc: support impl's in PrintCx::parameterized.Eduard-Mihai Burtescu-0/+16
2019-03-15rustc: rewrite PrintCx::parameterized to be much simpler and more general.Eduard-Mihai Burtescu-206/+123
2019-03-15rustc: use define_print! to implement fmt::{Display,Debug} for Kind.Eduard-Mihai Burtescu-1/+18
2019-03-15rustc: tie the 'tcx between Print and PrintCx in ty::print.Eduard-Mihai Burtescu-77/+62
2019-03-15rustc: implement fmt::{Debug,Display} on Ty instead of TyS.Eduard-Mihai Burtescu-1/+1
2019-03-15rustc: remove fmt::{Debug,Display} from ty::TyKind.Eduard-Mihai Burtescu-11/+3
2019-03-15rustc: keep a TyCtxt in PrintCx and use it instead of ty::tls.Eduard-Mihai Burtescu-179/+160
2019-03-15rustc: rename PrintContext to PrintCx.Eduard-Mihai Burtescu-7/+7
2019-03-15rustc: don't support `tcx.lift` returning `None` in ppaux.Eduard-Mihai Burtescu-33/+24
2019-03-15rustc: uniformize all lift expect messages to "could not lift for printing".Eduard-Mihai Burtescu-3/+3
2019-03-15rustc: add a 'tcx parameter to Print.Eduard-Mihai Burtescu-10/+13
2019-03-15rustc: start moving util::ppaux to ty::print.Eduard-Mihai Burtescu-83/+1
2019-03-14Auto merge of #58488 - wesleywiser:llvm_prof, r=michaelwoeristerbors-276/+23
Replace TimeLine LLVM profiling with the self profiler
2019-03-13Use derive macro for HashStableJohn Kåre Alsaker-1/+2
2019-03-10Replace TimeLine with SelfProfilerWesley Wiser-276/+23
2019-03-07HirIdification: replace NodeId method callsljedrz-7/+7
2019-03-05Pretty printing for const genericsvarkor-3/+67
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-03Use FxHashMapWesley Wiser-3/+4
2019-03-03Reduce the size of events by using a u64 instead of InstantWesley Wiser-37/+37
Part of #58372
2019-03-03Remove profiler output and replace with a raw event dumpWesley Wiser-316/+268
Related to #58372
2019-02-27Rename variadic to c_variadicDan Robertson-4/+4
Function signatures with the `variadic` member set are actually C-variadic functions. Make this a little more explicit by renaming the `variadic` boolean value, `c_variadic`.
2019-02-27rename Substs to InternalSubstscsmoe-4/+4
Change-Id: I3fa00e999a2ee4eb72db1fdf53a8633b49176a18
2019-02-15print more information for closures when `-Zverbose` is givenNiko Matsakis-0/+9
Ideally, we'd probably print the closure substs themselves actually.
2019-02-14Rollup merge of #58309 - wesleywiser:add_more_profiler_events, ↵Mazdak Farrokhzad-18/+57
r=michaelwoerister Add more profiler events - Adds Start\Stop events for time spent loading incremental query results from disk. - Adds Start\Stop events for time spent blocked waiting for queries to complete (when parallel queries are enabled). r? @michaelwoerister
2019-02-11[self-profiler] Misc cleanupsWesley Wiser-15/+4
2019-02-11Capture time spent blocked waiting on queriesWesley Wiser-2/+26
This captures time spent blocked when a query is waiting for another query to finish executing in another thread.
2019-02-11Add self profiler events for loading incremental query results from diskWesley Wiser-3/+29
2019-02-10rustc: doc commentsAlexander Regueiro-21/+20
2019-02-10Auto merge of #58151 - ljedrz:HirIdify_rustc, r=Zoxcbors-1/+1
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-173/+353
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-07Add const params to Defvarkor-0/+1
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07Calculate self-times not total timesWesley Wiser-7/+18
2019-02-07Add #[inline] annotationsWesley Wiser-0/+7
2019-02-07Implement more detailed self profilingWesley Wiser-173/+335
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 ```
2019-02-05rustc: partially HirIdifyljedrz-1/+1
2019-02-05move librustc to 2018Mark Mansi-20/+20
2019-01-10integrate trait aliases into def-paths / metadataNiko Matsakis-0/+1
Co-authored-by: Alexander Regueiro <alexreg@me.com>
2019-01-08Auto merge of #56988 - alexcrichton:monotonic-instant, r=sfacklerbors-15/+2
std: Force `Instant::now()` to be monotonic This commit is an attempt to force `Instant::now` to be monotonic through any means possible. We tried relying on OS/hardware/clock implementations, but those seem buggy enough that we can't rely on them in practice. This commit implements the same hammer Firefox recently implemented (noted in #56612) which is to just keep whatever the lastest `Instant::now()` return value was in memory, returning that instead of the OS looks like it's moving backwards. Closes #48514 Closes #49281 cc #51648 cc #56560 Closes #56612 Closes #56940
2019-01-07Rename some functionsJohn Kåre Alsaker-1/+1