Skip to content

Rollup of 6 pull requests #139997

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 13 commits into from
Apr 18, 2025
Merged

Rollup of 6 pull requests #139997

merged 13 commits into from
Apr 18, 2025

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

adwinwhite and others added 13 commits March 17, 2025 18:33
Includes the following changes:

* Replace `#[naked]` with `#[unsafe(naked)]` [1] [2]
* Replace `bl!` with `asm_sym` [3]

[1]: rust-lang/compiler-builtins#817
[2]: rust-lang/compiler-builtins#821
[3]: rust-lang/compiler-builtins#820
…esleywiser

avoid overflow when generating debuginfo for expanding recursive types

Fixes rust-lang#135093
Fixes rust-lang#121538
Fixes rust-lang#107362
Fixes rust-lang#100618
Fixes rust-lang#115994

The overflow happens because expanding recursive types keep creating new nested types when recurring into sub fields.
I fixed that by returning an empty stub node when expanding recursion is detected.
Update `compiler-builtins` to 0.1.155

Includes the following changes:

* Replace `#[naked]` with `#[unsafe(naked)]` [1] [2]
* Replace `bl!` with `asm_sym` [3]

[1]: rust-lang/compiler-builtins#817
[2]: rust-lang/compiler-builtins#821
[3]: rust-lang/compiler-builtins#820

try-job: armhf-gnu
try-job: aarch64-apple
try-job: dist-apple-various
run-make: drop `os_pipe` workaround now that `anonymous_pipe` is stable on beta

Follow-up to rust-lang#137537 where I had to include a temporary dep on `os_pipe` before `anonymous_pipe` was stabilized. Now that `anonymous_pipe` is stable on beta, we can get rid of this workaround.

Closes rust-lang#137532. (Final cleanup item)

r? `@Kobzol`
…viper

tests: adjust 101082 test for LLVM 21 fix

Fixes rust-lang#139987.
@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs 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. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Apr 18, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Apr 18, 2025

📌 Commit 1b52421 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 Apr 18, 2025
@bors
Copy link
Collaborator

bors commented Apr 18, 2025

⌛ Testing commit 1b52421 with merge 8bcd932...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 18, 2025
…iaskrgr

Rollup of 6 pull requests

Successful merges:

 - rust-lang#137881 (Add `copy_within` to `IndexSlice`)
 - rust-lang#138599 (avoid overflow when generating debuginfo for expanding recursive types)
 - rust-lang#139934 (Update `compiler-builtins` to 0.1.155)
 - rust-lang#139976 (run-make: drop `os_pipe` workaround now that `anonymous_pipe` is stable on beta)
 - rust-lang#139989 (tests: adjust 101082 test for LLVM 21 fix)
 - rust-lang#139991 (remove stray file)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors
Copy link
Collaborator

bors commented Apr 18, 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 18, 2025
@rust-log-analyzer
Copy link
Collaborator

A job failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
Updating files:  24% (12691/52878)
Updating files:  25% (13220/52878)
Updating files:  25% (13423/52878)
##[error]error: inflate: data stream error (incorrect data check)
##[error]fatal: packed object 5c3be769f9e0dfdbfa74d2d255d1421b67bafcc4 (stored in .git/objects/pack/pack-9883471ea839a448a45b11b3e15e248fa69cd7d4.pack) is corrupt
##[error]The process '/usr/local/bin/git' failed with exit code 128
Post job cleanup.
[command]/usr/local/bin/git version
git version 2.49.0
Copying '/Users/runner/.gitconfig' to '/Users/runner/work/_temp/18ac01b8-e42c-40de-af85-88545458cde7/.gitconfig'
Temporarily overriding HOME='/Users/runner/work/_temp/18ac01b8-e42c-40de-af85-88545458cde7' before making global git config changes

@matthiaskrgr
Copy link
Member Author

@bors retry

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

bors commented Apr 18, 2025

⌛ Testing commit 1b52421 with merge 6a0bd27...

@bors
Copy link
Collaborator

bors commented Apr 18, 2025

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

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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#137881 Add copy_within to IndexSlice 20f35199c7b309d501a287e118e2b81b4d310752 (link)
#138599 avoid overflow when generating debuginfo for expanding recu… b10edb496c5ff49920844e6beadc9110f91e3d3d (link)
#139934 Update compiler-builtins to 0.1.155 4578478250d0865fad477f7a7e0eedf9f1cb1381 (link)
#139976 run-make: drop os_pipe workaround now that `anonymous_pip… 2829f2e3ccd8d70868d106ab465e7bfecb8d24ec (link)
#139989 tests: adjust 101082 test for LLVM 21 fix fb2f2103db66900d00fc835c3e19d46f6ac1f024 (link)
#139991 remove stray file 424a7cd032d3129a5e77035dbce1d47612a79dd6 (link)

previous master: 1f76d219c9

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

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 1f76d21 (parent) -> 6a0bd27 (this PR)

Test differences

Show 19 test diffs

Stage 1

  • [codegen] tests/codegen/issues/issue-101082.rs#x86-64-v3: ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) -> ignore (ignored when the LLVM version 19.1.1 is older than 21.0.0) (J4)
  • [crashes] tests/crashes/100618.rs: pass -> [missing] (J5)
  • [crashes] tests/crashes/107362.rs: pass -> [missing] (J5)
  • [crashes] tests/crashes/115994.rs: pass -> [missing] (J5)
  • [crashes] tests/crashes/121538.rs: pass -> [missing] (J5)
  • [debuginfo-gdb] tests/debuginfo/recursive-type-with-gat.rs: [missing] -> pass (J5)
  • [codegen] tests/codegen/issues/issue-101082.rs#x86-64-v3: pass -> ignore (ignored when the LLVM version 20.1.2 is older than 21.0.0) (J6)

Stage 2

  • [codegen] tests/codegen/issues/issue-101082.rs#x86-64-v3: ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) -> ignore (ignored when the LLVM version 19.1.1 is older than 21.0.0) (J0)
  • [debuginfo-gdb (split-dwarf)] tests/debuginfo/recursive-type-with-gat.rs: [missing] -> pass (J1)
  • [crashes] tests/crashes/107362.rs: pass -> [missing] (J2)
  • [crashes] tests/crashes/115994.rs: pass -> [missing] (J2)
  • [crashes] tests/crashes/121538.rs: pass -> [missing] (J2)
  • [codegen] tests/codegen/issues/issue-101082.rs#x86-64-v3: ignore (only executed when the architecture is x86_64) -> ignore (ignored when the LLVM version 20.1.2 is older than 21.0.0) (J3)
  • [crashes] tests/crashes/100618.rs: ignore (only executed when the architecture is x86_64) -> [missing] (J3)
  • [codegen] tests/codegen/issues/issue-101082.rs#x86-64-v3: pass -> ignore (ignored when the LLVM version 20.1.2 is older than 21.0.0) (J7)
  • [crashes] tests/crashes/100618.rs: pass -> [missing] (J8)
  • [debuginfo-gdb] tests/debuginfo/recursive-type-with-gat.rs: [missing] -> pass (J9)
  • [debuginfo-lldb] tests/debuginfo/recursive-type-with-gat.rs: [missing] -> pass (J10)
  • [debuginfo-cdb] tests/debuginfo/recursive-type-with-gat.rs: [missing] -> pass (J11)

Job group index

Job duration changes

  1. dist-apple-various: 5885.2s -> 7693.0s (30.7%)
  2. x86_64-apple-2: 5276.8s -> 5852.2s (10.9%)
  3. dist-x86_64-apple: 10799.5s -> 9868.7s (-8.6%)
  4. x86_64-msvc-2: 7264.2s -> 6710.0s (-7.6%)
  5. i686-gnu-nopt-2: 6346.4s -> 6826.0s (7.6%)
  6. x86_64-mingw-1: 9150.6s -> 8552.6s (-6.5%)
  7. x86_64-gnu: 6049.3s -> 6416.4s (6.1%)
  8. dist-x86_64-linux-alt: 7173.3s -> 7502.6s (4.6%)
  9. dist-x86_64-mingw: 7862.6s -> 7530.0s (-4.2%)
  10. aarch64-apple: 3651.0s -> 3498.1s (-4.2%)
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 (6a0bd27): comparison URL.

Overall result: ❌ regressions - 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.2% [0.2%, 0.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary 0.3%, 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)
1.0% [0.4%, 3.9%] 7
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.1% [-2.1%, -0.5%] 4
Improvements ✅
(secondary)
-2.3% [-3.1%, -1.5%] 2
All ❌✅ (primary) 0.3% [-2.1%, 3.9%] 11

Cycles

Results (primary 0.5%)

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.9% [0.7%, 1.0%] 3
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-0.4%, -0.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.5% [-0.4%, 1.0%] 4

Binary size

Results (primary -0.3%, secondary -0.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)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.3% [-0.4%, -0.1%] 4
Improvements ✅
(secondary)
-0.2% [-0.2%, -0.1%] 8
All ❌✅ (primary) -0.3% [-0.4%, -0.1%] 4

Bootstrap: 771.086s -> 771.347s (0.03%)
Artifact size: 365.01 MiB -> 365.02 MiB (0.00%)

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs 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-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.