rust
rust copied to clipboard
mir-opt: Do not create storage marks in EarlyOtherwiseBranch
Fixes #141212.
The first commit add StorageDead by creating new indirect BB that makes CFG more complicated, but I think it's better to just not create storage marks.
r? mir-opt
Some changes occurred to MIR optimizations
cc @rust-lang/wg-mir-opt
@bors try @rust-timer queue
Awaiting bors try build completion.
@rustbot label: +S-waiting-on-perf
:hourglass: Trying commit 8c7faa6ed154893fdbfcb128055b593102b4c6db with merge 26a3bb52c9ec74248edb6096a8ed75f76e4db99d...
:sunny: Try build successful - checks-actions
Build commit: 26a3bb52c9ec74248edb6096a8ed75f76e4db99d (26a3bb52c9ec74248edb6096a8ed75f76e4db99d)
Queued 26a3bb52c9ec74248edb6096a8ed75f76e4db99d with parent 95a2212587f1b8500af1ac630322b0cb2e030c61, future comparison URL. There are currently 0 preceding artifacts in the queue. It will probably take at least ~1.4 hours until the benchmark run finishes.
Finished benchmarking commit (26a3bb52c9ec74248edb6096a8ed75f76e4db99d): comparison URL.
Overall result: ✅ improvements - no action needed
Benchmarking 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 @rustbot label: -S-waiting-on-perf -perf-regression
Instruction count
This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
-2.9% | [-2.9%, -2.9%] | 1 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | -2.9% | [-2.9%, -2.9%] | 1 |
Max RSS (memory usage)
This benchmark run did not return any relevant results for this metric.
Cycles
Results (primary -2.8%)
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) |
- | - | 0 |
| Improvements ✅ (primary) |
-2.8% | [-2.8%, -2.8%] | 1 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | -2.8% | [-2.8%, -2.8%] | 1 |
Binary size
Results (primary -1.1%)
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) |
- | - | 0 |
| Improvements ✅ (primary) |
-1.1% | [-1.1%, -1.1%] | 1 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | -1.1% | [-1.1%, -1.1%] | 1 |
Bootstrap: 776.359s -> 778.13s (0.23%) Artifact size: 366.28 MiB -> 366.27 MiB (-0.00%)
r? mir-opt
@bors r+
:pushpin: Commit 8c7faa6ed154893fdbfcb128055b593102b4c6db has been approved by oli-obk
It is now in the queue for this repository.
:hourglass: Testing commit 8c7faa6ed154893fdbfcb128055b593102b4c6db with merge c6a955468b025dbe3d1de3e8f3e30496d1fb7f40...
:sunny: Test successful - checks-actions Approved by: oli-obk Pushing c6a955468b025dbe3d1de3e8f3e30496d1fb7f40 to master...
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 100199c9aa50b0c47b37c9c86335d68b2a77b535 (parent) -> c6a955468b025dbe3d1de3e8f3e30496d1fb7f40 (this PR)
Test differences
No test diffs found
Test dashboard
Run
cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard c6a955468b025dbe3d1de3e8f3e30496d1fb7f40 --output-dir test-dashboard
And then open test-dashboard/index.html in your browser to see an overview of all executed tests.
Job duration changes
- dist-aarch64-apple: 4724.6s -> 6292.1s (33.2%)
- x86_64-apple-2: 5136.4s -> 4095.9s (-20.3%)
- dist-apple-various: 8142.3s -> 6862.4s (-15.7%)
- dist-x86_64-mingw: 7298.7s -> 8267.9s (13.3%)
- mingw-check-1: 1928.3s -> 1672.4s (-13.3%)
- x86_64-gnu-llvm-19-1: 3659.1s -> 3198.6s (-12.6%)
- i686-gnu-1: 8237.9s -> 7357.2s (-10.7%)
- i686-gnu-nopt-1: 7976.2s -> 7146.8s (-10.4%)
- i686-gnu-2: 6039.2s -> 5443.5s (-9.9%)
- aarch64-apple: 4059.4s -> 4459.1s (9.8%)
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.
Finished benchmarking commit (c6a955468b025dbe3d1de3e8f3e30496d1fb7f40): comparison URL.
Overall result: ❌ regressions - no action needed
@rustbot label: -perf-regression
Instruction count
Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
0.4% | [0.4%, 0.4%] | 1 |
| Regressions ❌ (secondary) |
0.5% | [0.5%, 0.5%] | 2 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | 0.4% | [0.4%, 0.4%] | 1 |
Max RSS (memory usage)
Results (secondary -2.5%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
2.9% | [2.9%, 2.9%] | 1 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
-7.9% | [-7.9%, -7.9%] | 1 |
| All ❌✅ (primary) | - | - | 0 |
Cycles
This benchmark run did not return any relevant results for this metric.
Binary size
Results (primary 0.4%, secondary -0.0%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
0.7% | [0.7%, 0.7%] | 1 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
-0.0% | [-0.0%, -0.0%] | 1 |
| Improvements ✅ (secondary) |
-0.0% | [-0.0%, -0.0%] | 1 |
| All ❌✅ (primary) | 0.4% | [-0.0%, 0.7%] | 2 |
Bootstrap: 755.155s -> 754.321s (-0.11%) Artifact size: 372.17 MiB -> 372.15 MiB (-0.01%)