Skip to content

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

xizheyin and others added 11 commits May 7, 2025 17:32
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
trait selection: check `&` before suggest remove deref

FIxes rust-lang#140166

r? compiler
…eyouxu

[win][arm64] Disable various DebugInfo tests that don't work on Arm64 Windows

While trying to get the aarch64-msvc build working correctly (rust-lang#140136), various DebugInfo related tests were failing.

I've added comments to each test to indicate why it is disabled and linked to appropriate bugs.

* `tests/debuginfo/step-into-match.rs`: Stepping at the end of a function on goes to the callsite, not the instruction after it.
* `tests/debuginfo/type-names.rs`: Arm64 Windows cdb doesn't support JavaScript extensions. Followed up with the Microsoft Debugger Tools team to fix this.
* `tests/ui/runtime/backtrace-debuginfo.rs`: Backtraces are truncated due to rust-lang#140489
[arm64] Pointer auth test should link with C static library statically

While trying to get the aarch64-msvc build working correctly (rust-lang#140136), the `pointer-auth-link-with-c` test was failing.

The pointer auth test builds its C library statically:
https://github.com/rust-lang/rust/blob/3ef8e64ce9f72ee8d600d55bc43b36eed069b252/tests/run-make/pointer-auth-link-with-c/rmake.rs#L15

However, the Rust code did not indicate the link kind, so it defaulted to dynamic which then fails on Windows.
[win][arm64] Disable MSVC Linker 'Arm Hazard' warning

While trying to get the aarch64-msvc build working correctly (rust-lang#140136), I observed the following test failure:

From <rust-lang#140136 (comment)>

```
  = note: main.main.d17f5fbe6225cf88-cgu.0.rcgu.o : fatal error LNK1322: cannot avoid potential ARM hazard (Cortex-A53 MPCore processor bug #843419) in section 0x57; please consider using compiler option /Gy if it was not used
```

This is warning of a code sequence that triggers a bug in Cortex-A53 processors: <https://developer.arm.com/documentation/epm048406/latest>

However, since Windows 10 isn't supported on the Cortex-A53, this warning is not required, so it can be suppressed using the undocumented `/arm64hazardfree` flag.
[win][arm64] Disable std::fs tests that require symlinks

While trying to get the aarch64-msvc build working correctly (rust-lang#140136), various tests in `std::fs` were failing as the Arm64 Windows runner image we are using does not have Developer Mode enabled, thus it cannot create symlinks.

I've [filed a request to get Developer Mode enabled](actions/partner-runner-images#94), but in the meantime I've disabled the relevant tests on Arm64 Windows.
@rustbot rustbot added A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels May 8, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented May 8, 2025

📌 Commit 7fc43e5 has been approved by matthiaskrgr

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 May 8, 2025
@bors
Copy link
Collaborator

bors commented May 8, 2025

⌛ Testing commit 7fc43e5 with merge fe348cd...

@bors
Copy link
Collaborator

bors commented May 8, 2025

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing fe348cd to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 8, 2025
@bors bors merged commit fe348cd into rust-lang:master May 8, 2025
1 check passed
@rustbot rustbot added this to the 1.88.0 milestone May 8, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#140736 trait selection: check & before suggest remove deref 60ec3b7f590a694b1f45a4ddf2fe03d28c12e3b0 (link)
#140755 [win][arm64] Disable various DebugInfo tests that don't wor… 0b1371a1c0ecebc530412d57a8dcd117f43f5019 (link)
#140756 [arm64] Pointer auth test should link with C static library… c4bdc690600f295e31bcdd2dfb6681655a971910 (link)
#140758 [win][arm64] Disable MSVC Linker 'Arm Hazard' warning aba1dcd68fe6695e1542a9f39fe38d4780c9d71b (link)
#140759 [win][arm64] Disable std::fs tests that require symlinks aa28868463eb0f7b2efd3440b16b9b5900ff54ef (link)

previous master: e964ccafed

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

Copy link
Contributor

github-actions bot commented May 8, 2025

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 e964cca (parent) -> fe348cd (this PR)

Test differences

Show 2 test diffs

Stage 1

  • [ui] tests/ui/traits/suggest-remove-deref-issue-140166.rs: [missing] -> pass (J0)

Stage 2

  • [ui] tests/ui/traits/suggest-remove-deref-issue-140166.rs: [missing] -> pass (J1)

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard fe348cd1a8e0fa445b772393147ed865904dcd4d --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

  1. dist-apple-various: 7813.1s -> 5335.9s (-31.7%)
  2. x86_64-apple-1: 9737.8s -> 7341.1s (-24.6%)
  3. x86_64-apple-2: 6125.7s -> 5064.9s (-17.3%)
  4. dist-arm-linux: 4691.4s -> 5070.2s (8.1%)
  5. x86_64-msvc-ext1: 7829.3s -> 7243.9s (-7.5%)
  6. dist-aarch64-apple: 6267.0s -> 5799.6s (-7.5%)
  7. aarch64-apple: 4520.0s -> 4191.6s (-7.3%)
  8. x86_64-gnu-tools: 5874.9s -> 6200.6s (5.5%)
  9. dist-x86_64-apple: 8945.0s -> 9361.0s (4.7%)
  10. x86_64-msvc-2: 7146.2s -> 6866.7s (-3.9%)
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 (fe348cd): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -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)
- - 0
Improvements ✅
(secondary)
-0.7% [-0.7%, -0.7%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -0.7%, secondary 4.2%)

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)
1.4% [0.6%, 2.7%] 5
Regressions ❌
(secondary)
4.2% [1.0%, 5.7%] 4
Improvements ✅
(primary)
-4.1% [-8.3%, -0.9%] 3
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.7% [-8.3%, 2.7%] 8

Cycles

Results (primary 0.4%, secondary 2.3%)

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.6% [0.5%, 0.9%] 13
Regressions ❌
(secondary)
2.3% [2.3%, 2.3%] 1
Improvements ✅
(primary)
-0.6% [-0.8%, -0.5%] 3
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.4% [-0.8%, 0.9%] 16

Binary size

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

Bootstrap: 772.853s -> 771.734s (-0.14%)
Artifact size: 365.33 MiB -> 365.39 MiB (0.02%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants