-
Notifications
You must be signed in to change notification settings - Fork 13k
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
aligns the behavior to that prior to #118311 #118411
Conversation
r? @b-naber (rustbot has picked a reviewer for you, use r? to override) |
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…e_2, r=<try> aligns the behavior to that prior to rust-lang#118311 After rust-lang#118311, it seems that due to an oversight some alignments were unintentionally omitted, possibly leading the code into different branches. This PR attempts to restore those alignments and aims to fix the regression reported at rust-lang#118319 (comment)
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (3c773cd): comparison URL. Overall result: no relevant changes - no action neededBenchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf. @bors rollup=never Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 672.731s -> 673.339s (0.09%) |
4307541
to
77f9a77
Compare
Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt |
I can confirm that it's not equivalent between So, the latest patch modifies |
hi @compiler-errors could you help rerun this perf test? |
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…e_2, r=<try> aligns the behavior to that prior to rust-lang#118311 After rust-lang#118311, it seems that due to an oversight some alignments were unintentionally omitted, possibly leading the code into different branches. This PR attempts to restore those alignments and aims to fix the regression reported at rust-lang#118319 (comment)
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (205cae8): comparison URL. Overall result: ❌✅ regressions and improvements - ACTION NEEDEDBenchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please indicate this with @bors rollup=never Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 675.58s -> 673.858s (-0.25%) |
r? @compiler-errors as the author of #119174 #119258 #119198 |
In what case is this not true? |
In any case, it's certainly true now, and any coroutines that had |
@@ -474,7 +474,9 @@ fn construct_fn<'tcx>( | |||
}; | |||
|
|||
let mut abi = fn_sig.abi; | |||
if let DefKind::Closure = tcx.def_kind(fn_def) { | |||
if let DefKind::Closure = tcx.def_kind(fn_def) | |||
&& !tcx.is_coroutine(fn_def) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This concerns me, since I hope that coroutines don't have abi::RustCall
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Previously, DefKind
included both DefKind::Closure
and DefKind::Coroutine
. This change is simply to ensure that they are treated the same.
I forgot about this case and I will investigate it again tomorrow |
Also, |
77f9a77
to
4fda2d8
Compare
A considerable amount of time has passed, so I need to go over it again:
I'm currently unable to reproduce it..🤦 |
@compiler-errors could you help in rerunning this performance test... |
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…e_2, r=<try> aligns the behavior to that prior to rust-lang#118311 After rust-lang#118311, it seems that due to an oversight some alignments were unintentionally omitted, possibly leading the code into different branches. This PR attempts to restore those alignments and aims to fix the regression reported at rust-lang#118319 (comment)
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (7236802): comparison URL. Overall result: no relevant changes - no action neededBenchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf. @bors rollup=never Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 666.95s -> 667.828s (0.13%) |
Do you mean performance discrepancies? Because there should be no behavioral discrepancies. This is what I meant by #118411 (comment). Since it's evident that this PR is not going to restore the performance before #118311, is it worth landing this? Does this fix remaining any bugs? |
Closing it as no substantial help has been provided..... |
After #118311, it seems that due to an oversight some alignments were unintentionally omitted, possibly leading the code into different branches. This PR attempts to restore those alignments and aims to fix the regression reported at #118319 (comment)