Skip to content

Conversation

clubby789
Copy link
Contributor

Fixes #131195

Alternative to #131201

@rustbot
Copy link
Collaborator

rustbot commented Oct 3, 2024

r? @BoxyUwU

rustbot has assigned @BoxyUwU.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 3, 2024
@rustbot
Copy link
Collaborator

rustbot commented Oct 3, 2024

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

@compiler-errors compiler-errors added the beta-nominated Nominated for backporting to the compiler in the beta channel. label Oct 3, 2024
@compiler-errors
Copy link
Member

Thanks!

@bors r+

@bors
Copy link
Collaborator

bors commented Oct 3, 2024

📌 Commit fd35e82 has been approved by compiler-errors

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 3, 2024
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Oct 3, 2024
…piler-errors

JumpThreading: fix bitwise not on non-booleans

Fixes rust-lang#131195

Alternative to rust-lang#131201
@compiler-errors compiler-errors added the stable-nominated Nominated for backporting to the compiler in the stable channel. label Oct 3, 2024
@rust-log-analyzer

This comment has been minimized.

@compiler-errors
Copy link
Member

Ok, well, this definitely causes a crash when building [email protected]

@bors r-

Let's actually land #131201, which is a more conservative fix. Then we can work on improving the jumpthreading optimization :)

Since cjgillot authored the jump threading optimization (I think?) I can pass this off to them.

r? @cjgillot

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Oct 3, 2024
@clubby789
Copy link
Contributor Author

Looks like some miscompile in std 🤔 In my local testing I get println hanging on futex forever

@compiler-errors
Copy link
Member

I am very curious to learn what is wrong with this PR :D

@bors
Copy link
Collaborator

bors commented Oct 4, 2024

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

@compiler-errors
Copy link
Member

@bors r+ rollup=never

@bors
Copy link
Collaborator

bors commented Apr 13, 2025

📌 Commit bee9c73 has been approved by compiler-errors

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 13, 2025
bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 13, 2025
…ler-errors

JumpThreading: fix bitwise not on non-booleans

Fixes rust-lang#131195

Alternative to rust-lang#131201
@bors
Copy link
Collaborator

bors commented Apr 13, 2025

⌛ Testing commit bee9c73 with merge 07e2b20...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Apr 13, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 13, 2025
@rust-cloud-vms rust-cloud-vms bot force-pushed the jumpthreading-not branch from bee9c73 to 41a5d8e Compare April 13, 2025 20:30
@clubby789
Copy link
Contributor Author

Rebased and updated a test.

@bors r=compiler-errors rollup=never

@bors
Copy link
Collaborator

bors commented Apr 13, 2025

📌 Commit 41a5d8e has been approved by compiler-errors

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 13, 2025
@bors
Copy link
Collaborator

bors commented Apr 13, 2025

⌛ Testing commit 41a5d8e with merge 6e83046...

@bors
Copy link
Collaborator

bors commented Apr 14, 2025

☀️ Test successful - checks-actions
Approved by: compiler-errors
Pushing 6e83046 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Apr 14, 2025
@bors bors merged commit 6e83046 into rust-lang:master Apr 14, 2025
7 checks passed
@rustbot rustbot added this to the 1.88.0 milestone Apr 14, 2025
Copy link
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 092a284 (parent) -> 6e83046 (this PR)

Test differences

No test diffs found

Job duration changes

  1. dist-aarch64-linux: 5318.0s -> 7613.4s (43.2%)
  2. dist-apple-various: 8408.9s -> 6220.8s (-26.0%)
  3. x86_64-apple-2: 4930.6s -> 4184.6s (-15.1%)
  4. x86_64-apple-1: 7984.3s -> 6994.9s (-12.4%)
  5. dist-various-2: 3418.3s -> 3209.9s (-6.1%)
  6. x86_64-msvc-ext1: 7533.8s -> 7085.1s (-6.0%)
  7. i686-gnu-2: 6685.7s -> 6370.4s (-4.7%)
  8. dist-aarch64-msvc: 8201.0s -> 8509.3s (3.8%)
  9. dist-aarch64-apple: 4389.5s -> 4532.4s (3.3%)
  10. aarch64-apple: 3719.8s -> 3603.2s (-3.1%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (6e83046): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results (primary -7.5%, secondary -2.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.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
1.5% [1.5%, 1.5%] 1
Improvements ✅
(primary)
-7.5% [-7.5%, -7.5%] 1
Improvements ✅
(secondary)
-3.8% [-4.3%, -3.2%] 2
All ❌✅ (primary) -7.5% [-7.5%, -7.5%] 1

Cycles

This benchmark run did not return any relevant results for this metric.

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 779.607s -> 779.963s (0.05%)
Artifact size: 365.51 MiB -> 365.51 MiB (0.00%)

ChrisDenton added a commit to ChrisDenton/rust that referenced this pull request Apr 19, 2025
…ler-errors

Remove early exits from JumpThreading.

This removes early exits from rust-lang#131203 as I asked during review.

The correctness of the backtracking is `mutated_statement` clearing all relevant conditions. If `process_statement` fails to insert a new condition, for instance by const-eval failure, `mutated_statement`  still removes the obsolete conditions from the state.

r? `@compiler-errors`
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Apr 20, 2025
Rollup merge of rust-lang#140024 - cjgillot:continue-jumping, r=compiler-errors

Remove early exits from JumpThreading.

This removes early exits from rust-lang#131203 as I asked during review.

The correctness of the backtracking is `mutated_statement` clearing all relevant conditions. If `process_statement` fails to insert a new condition, for instance by const-eval failure, `mutated_statement`  still removes the obsolete conditions from the state.

r? `@compiler-errors`
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Apr 20, 2025
Remove early exits from JumpThreading.

This removes early exits from rust-lang/rust#131203 as I asked during review.

The correctness of the backtracking is `mutated_statement` clearing all relevant conditions. If `process_statement` fails to insert a new condition, for instance by const-eval failure, `mutated_statement`  still removes the obsolete conditions from the state.

r? `@compiler-errors`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

-Zmir-opt-level miscompiles code with panic