-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Apply EarlyOtherwiseBranch
to scalar value
#129047
Conversation
Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt |
cc633b3
to
f8ebe31
Compare
☔ The latest upstream changes (presumably #130165) made this pull request unmergeable. Please resolve the merge conflicts. |
r=me after rebase |
f8ebe31
to
e3a9eaf
Compare
Rebased. |
@bors r+ |
…, r=cjgillot Apply `EarlyOtherwiseBranch` to scalar value In the future, I'm thinking of hoisting discriminant via GVN so that we only need to write very little code here. r? `@cjgillot`
The job Click to see the possible cause of the failure (guessed by this bot)
|
💔 Test failed - checks-actions |
@bors retry |
☀️ Test successful - checks-actions |
Finished benchmarking commit (a772336): comparison URL. Overall result: ❌✅ regressions and improvements - no action needed@rustbot label: -perf-regression 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)Results (primary 5.0%, secondary 3.7%)This 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.
CyclesResults (primary -0.5%, secondary -8.0%)This 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 sizeResults (primary 0.2%, secondary 0.0%)This 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.
Bootstrap: 768.601s -> 767.14s (-0.19%) |
…h_scalar, r=cjgillot" This reverts commit a772336, reversing changes made to 702987f. It seems Apply EarlyOtherwiseBranch to scalar value rust-lang#129047 may have lead to several nightly regressions: - rust-lang#130769 - rust-lang#130774 - rust-lang#130771 And since this is a mir-opt ICE that seems to quite easy to trigger with real-world crates being affected, let's revert for now and reland the mir-opt later.
…h_scalar, r=cjgillot" This reverts commit a772336, reversing changes made to 702987f. It seems Apply EarlyOtherwiseBranch to scalar value rust-lang#129047 may have lead to several nightly regressions: - rust-lang#130769 - rust-lang#130774 - rust-lang#130771 And since this is a mir-opt ICE that seems to quite easy to trigger with real-world crates being affected, let's revert for now and reland the mir-opt later.
Revert "Apply EarlyOtherwiseBranch to scalar value rust-lang#129047" This reverts PR rust-lang#129047, commit a772336, reversing changes made to 702987f. cc `@DianQK` and `@cjgillot` as the PR author and reviewer of rust-lang#129047 respectively. It seems [Apply EarlyOtherwiseBranch to scalar value rust-lang#129047](rust-lang#129047) may have lead to several nightly regressions: - rust-lang#130769 - rust-lang#130774 - rust-lang#130771 Example test that would ICE with changes in rust-lang#129047 (this test is included in this PR): ```rs //@ compile-flags: -C opt-level=3 //@ check-pass use std::task::Poll; pub fn poll(val: Poll<Result<Option<Vec<u8>>, u8>>) { match val { Poll::Ready(Ok(Some(_trailers))) => {} Poll::Ready(Err(_err)) => {} Poll::Ready(Ok(None)) => {} Poll::Pending => {} } } ``` Since this is a mir-opt ICE that seems to quite easy to trigger with real-world crates being affected, let's revert for now and reland the mir-opt after these are fixed.
Revert "Apply EarlyOtherwiseBranch to scalar value rust-lang#129047" This reverts PR rust-lang#129047, commit a772336, reversing changes made to 702987f. cc `@DianQK` and `@cjgillot` as the PR author and reviewer of rust-lang#129047 respectively. It seems [Apply EarlyOtherwiseBranch to scalar value rust-lang#129047](rust-lang#129047) may have lead to several nightly regressions: - rust-lang#130769 - rust-lang#130774 - rust-lang#130771 Example test that would ICE with changes in rust-lang#129047 (this test is included in this PR): ```rs //@ compile-flags: -C opt-level=3 //@ check-pass use std::task::Poll; pub fn poll(val: Poll<Result<Option<Vec<u8>>, u8>>) { match val { Poll::Ready(Ok(Some(_trailers))) => {} Poll::Ready(Err(_err)) => {} Poll::Ready(Ok(None)) => {} Poll::Pending => {} } } ``` Since this is a mir-opt ICE that seems to quite easy to trigger with real-world crates being affected, let's revert for now and reland the mir-opt after these are fixed.
…ch_scalar, r=cjgillot" This reverts commit 16a0266.
Revert "Apply EarlyOtherwiseBranch to scalar value #129047" This reverts PR #129047, commit a772336fb3fbd1fe4493077fcfe04e0221296a99, reversing changes made to 702987f75b74f789ba227ee04a3d7bb1680c2309. cc `@DianQK` and `@cjgillot` as the PR author and reviewer of #129047 respectively. It seems [Apply EarlyOtherwiseBranch to scalar value #129047](rust-lang/rust#129047) may have lead to several nightly regressions: - rust-lang/rust#130769 - rust-lang/rust#130774 - rust-lang/rust#130771 Example test that would ICE with changes in #129047 (this test is included in this PR): ```rs //@ compile-flags: -C opt-level=3 //@ check-pass use std::task::Poll; pub fn poll(val: Poll<Result<Option<Vec<u8>>, u8>>) { match val { Poll::Ready(Ok(Some(_trailers))) => {} Poll::Ready(Err(_err)) => {} Poll::Ready(Ok(None)) => {} Poll::Pending => {} } } ``` Since this is a mir-opt ICE that seems to quite easy to trigger with real-world crates being affected, let's revert for now and reland the mir-opt after these are fixed.
…ch_scalar, r=cjgillot" This reverts commit 16a0266.
…ch_scalar, r=cjgillot" This reverts commit 16a0266.
…ch_scalar, r=cjgillot" This reverts commit 16a0266.
…ch_scalar, r=cjgillot" This reverts commit 16a0266.
In the future, I'm thinking of hoisting discriminant via GVN so that we only need to write very little code here.
r? @cjgillot