Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve -Ztime-passes #62110

Merged
merged 2 commits into from Jul 5, 2019

Conversation

@nnethercote
Copy link
Contributor

commented Jun 25, 2019

Two improvements that make -Ztime-passes more useful.

r? @Zoxc

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from 454167c to 27e3b06 Jun 25, 2019

src/librustc_driver/lib.rs Outdated Show resolved Hide resolved
src/librustc_driver/lib.rs Outdated Show resolved Hide resolved

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from 27e3b06 to f05bd80 Jun 26, 2019

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

commented Jun 26, 2019

@Zoxc: new code is up. It addresses some of your comments, but not all, as per the discussions above. I think it's a clear improvement over the status quo, see what you think.

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

commented Jun 28, 2019

@Zoxc: what do you think about the latest code?

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from f05bd80 to 2b749f1 Jul 1, 2019

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

commented Jul 1, 2019

@Zoxc: I updated the code to use the Callbacks trait instead of the run_compiler return value to propagate the bool.

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from 2b749f1 to 7f1671e Jul 1, 2019

src/librustc_driver/lib.rs Outdated Show resolved Hide resolved

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from 7f1671e to 718a7c7 Jul 2, 2019

@bors

This comment has been minimized.

Copy link
Contributor

commented Jul 3, 2019

☔️ The latest upstream changes (presumably #61775) made this pull request unmergeable. Please resolve the merge conflicts.

nnethercote added some commits Jun 25, 2019

Remove `solve_nll_region_constraints` measurements from `-Ztime-passe…
…s` output.

Because it pollutes the output with hundreds or thousands of
uninteresting lines for which the time duration is always(?) 0.000s.
Add a "total" measurement to -Ztime-passes.
This is useful for getting the total compilation time at the end.
To do this, the patch changes `print_time_passes_entry` to not increment
the depth, which means that `print_time_passes_entry_internal` is no
longer needed.

@nnethercote nnethercote force-pushed the nnethercote:improve-Ztime-passes branch from 718a7c7 to 87b103d Jul 4, 2019

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

commented Jul 4, 2019

@Zoxc: I have rebased. As far as I can tell, I have addressed all your concerns and answered all your questions. I think it's ready to land.

@Zoxc

This comment has been minimized.

Copy link
Contributor

commented Jul 5, 2019

@bors r+

I think we could probably just remove the indentation support. It's broken for LLVM and for the parallel compiler anyway.

@bors

This comment has been minimized.

Copy link
Contributor

commented Jul 5, 2019

📌 Commit 87b103d has been approved by Zoxc

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

commented Jul 5, 2019

The indentation is crucial to understand which passes are sub-passes. I understand it's broken for the back-end, but even then it's still highly useful for the other passes.

Centril added a commit to Centril/rust that referenced this pull request Jul 5, 2019

Rollup merge of rust-lang#62110 - nnethercote:improve-Ztime-passes, r…
…=Zoxc

Improve -Ztime-passes

Two improvements that make `-Ztime-passes` more useful.

r? @Zoxc

bors added a commit that referenced this pull request Jul 5, 2019

Auto merge of #62413 - Centril:rollup-ogg75hq, r=Centril
Rollup of 14 pull requests

Successful merges:

 - #61339 (Optimize pointer alignment in utf8 validation)
 - #61545 (Implement another internal lints)
 - #62110 (Improve -Ztime-passes)
 - #62133 (Feature gate `rustc` attributes harder)
 - #62151 (Update linked OpenSSL version)
 - #62158 (Add MemoryExtra in InterpretCx constructor params)
 - #62168 (The (almost) culmination of HirIdification)
 - #62193 (Create async version of the dynamic-drop test)
 - #62296 (request at least ptr-size alignment from posix_memalign)
 - #62369 (Remove `compile-pass` from compiletest)
 - #62380 (rustc_target: avoid negative register counts in the SysV x86_64 ABI.)
 - #62381 (Fix a typo in Write::write_vectored docs)
 - #62390 (Update README.md)
 - #62406 (Lint on invalid values passed to x.py --warnings)

Failed merges:

r? @ghost

Centril added a commit to Centril/rust that referenced this pull request Jul 5, 2019

Rollup merge of rust-lang#62110 - nnethercote:improve-Ztime-passes, r…
…=Zoxc

Improve -Ztime-passes

Two improvements that make `-Ztime-passes` more useful.

r? @Zoxc

bors added a commit that referenced this pull request Jul 5, 2019

Auto merge of #62418 - Centril:rollup-zbubpn4, r=Centril
Rollup of 14 pull requests

Successful merges:

 - #61339 (Optimize pointer alignment in utf8 validation)
 - #61545 (Implement another internal lints)
 - #62110 (Improve -Ztime-passes)
 - #62133 (Feature gate `rustc` attributes harder)
 - #62151 (Update linked OpenSSL version)
 - #62158 (Add MemoryExtra in InterpretCx constructor params)
 - #62168 (The (almost) culmination of HirIdification)
 - #62193 (Create async version of the dynamic-drop test)
 - #62369 (Remove `compile-pass` from compiletest)
 - #62380 (rustc_target: avoid negative register counts in the SysV x86_64 ABI.)
 - #62381 (Fix a typo in Write::write_vectored docs)
 - #62390 (Update README.md)
 - #62406 (Lint on invalid values passed to x.py --warnings)
 - #62414 (Remove last use of mem::uninitialized in SGX)

Failed merges:

r? @ghost

Centril added a commit to Centril/rust that referenced this pull request Jul 5, 2019

Rollup merge of rust-lang#62110 - nnethercote:improve-Ztime-passes, r…
…=Zoxc

Improve -Ztime-passes

Two improvements that make `-Ztime-passes` more useful.

r? @Zoxc

bors added a commit that referenced this pull request Jul 5, 2019

Auto merge of #62419 - Centril:rollup-82umycq, r=Centril
Rollup of 13 pull requests

Successful merges:

 - #61545 (Implement another internal lints)
 - #62110 (Improve -Ztime-passes)
 - #62133 (Feature gate `rustc` attributes harder)
 - #62158 (Add MemoryExtra in InterpretCx constructor params)
 - #62168 (The (almost) culmination of HirIdification)
 - #62193 (Create async version of the dynamic-drop test)
 - #62369 (Remove `compile-pass` from compiletest)
 - #62380 (rustc_target: avoid negative register counts in the SysV x86_64 ABI.)
 - #62381 (Fix a typo in Write::write_vectored docs)
 - #62390 (Update README.md)
 - #62396 (remove Scalar::is_null_ptr)
 - #62406 (Lint on invalid values passed to x.py --warnings)
 - #62414 (Remove last use of mem::uninitialized in SGX)

Failed merges:

r? @ghost

@bors bors merged commit 87b103d into rust-lang:master Jul 5, 2019

3 checks passed

pr Build #20190704.69 succeeded
Details
pr (Linux mingw-check) Linux mingw-check succeeded
Details
pr (Linux x86_64-gnu-llvm-6.0) Linux x86_64-gnu-llvm-6.0 succeeded
Details

@nnethercote nnethercote deleted the nnethercote:improve-Ztime-passes branch Jul 9, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.