Skip to content

Conversation

Zalathar
Copy link
Contributor

@Zalathar Zalathar commented Aug 29, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

tgross35 and others added 30 commits July 9, 2025 21:27
The submodule->subtree changes add a lot of commits with the GitHub
email.
This commit adds an empty stub for the  function
for QNX 8 targets. This symbol is required by the unwinder but is
not present, causing a linking failure when building with the
standard library.

Address review feedback: use whitelist for QNX versions
Add a mailmap entry for gnzlbg

The submodule->subtree changes add a lot of commits with the GitHub email.
…tgross35

implement Sum and Product for Saturating(u*)

ACP: rust-lang/libs-team#604

`@rustbot` label +needs-fcp
…l, r=tgross35

fix(std): Fix undefined reference to __my_thread_exit on QNX 8.0

When cross-compiling for the x86_64/aarch64-unknown-nto-qnx800 target (QNX SDP 8.0), the build fails during the final link stage with the error:
```
error: linking with `qcc` failed: exit status: 1
  ...
  = note: undefined reference to `__my_thread_exit'
 ```

- **On QNX 7.1**: The __my_thread_exit symbol is defined and exported by the main C library (libc.a/libc.so). The std backtrace code can therefore successfully take its address at compile time.

- **On QNX 8.0**: As part of a toolchain modernization, this symbol has been refactored. It is no longer present in any of the standard system libraries (.a or .so).

This patch addresses the problem at its source by conditionally compiling the problematic code.

Fixes rust-lang#142726
Remove TmpLayout in layout_of_enum

09a3846 from <rust-lang#103693> made LayoutData be owned instead of interned in `Variants::Multiple::variants`[^1], so there's no need for `TmpLayout` in layout_of_enum anymore, and we can just store the variants' layouts directly in the prospective `LayoutData`s' `variants` fields.

This should have no effect on semantics or layout.

(written as part of rust-lang#145337 but not related to the layout optimizations in that PR)

[^1]: see line 1154 of `compiler/rustc_target/src/abi/mod.rs` in the linked commit; `Variants::Multiple::variants` effectively changed from `IndexVec<.., Layout<'tcx>>` to `IndexVec<.., LayoutData>`  where the `LayoutData`s are not interned as `Layout`s (`LayoutData` was at the time called `LayoutS`)
…k-Simulacrum

std library: use execinfo library also on NetBSD.

The execinfo library is also available on NetBSD.
…lacrum

Test `instrument-mcount` codegen

Closes rust-lang#92109 by testing that a call to `mcount` is actually emitted
…=Kobzol

Add more to the `[workspace.dependencies]` section in the top-level `Cargo.toml`

Following on from rust-lang#145740.

r? `@Kobzol`
fix `core::marker::Destruct` doc

`~const` bounds are now `[const]` I think...

Related:   rust-lang#143874, rust-lang#133214
@rustbot rustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-run-make Area: port run-make Makefiles to rmake.rs A-rustdoc-json Area: Rustdoc JSON backend A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool O-unix Operating system: Unix-like 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels Aug 29, 2025
@Zalathar
Copy link
Contributor Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Aug 29, 2025

📌 Commit 31eafaf has been approved by Zalathar

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 Aug 29, 2025
@bors
Copy link
Collaborator

bors commented Aug 29, 2025

⌛ Testing commit 31eafaf with merge 41f2b6b...

@bors
Copy link
Collaborator

bors commented Aug 29, 2025

☀️ Test successful - checks-actions
Approved by: Zalathar
Pushing 41f2b6b to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Aug 29, 2025
@bors bors merged commit 41f2b6b into rust-lang:master Aug 29, 2025
11 checks passed
@rustbot rustbot added this to the 1.91.0 milestone Aug 29, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#143713 Add a mailmap entry for gnzlbg 64e537df912ac1be1c21e19e18bd8bf2d165efdd (link)
#144275 implement Sum and Product for Saturating(u*) 0492ebe200468930aacc5cba547ad414edc34263 (link)
#144354 fix(std): Fix undefined reference to __my_thread_exit on QN… 09a489d832b46619f6453bf6e24da191ff9b956d (link)
#145387 Remove TmpLayout in layout_of_enum 7bc1f894e2bb71b6468fddfa84d90717bed048b4 (link)
#145793 std library: use execinfo library also on NetBSD. 5899281b6254275d4fce343904da920a16f75d49 (link)
#145884 Test instrument-mcount codegen 495f0f11e1da3471498e84ef1b3d782f4d3433a6 (link)
#145947 Add more to the [workspace.dependencies] section in the t… b82094e0861764e09d811d5d9ab13f5118a3c4a5 (link)
#145972 fix core::marker::Destruct doc 3bb5a1b637ec9f0ef68a3463f018b4ca25650c0d (link)
#145977 tests: Ignore basic-stepping.rs on riscv64 2a6c2855b964a01be85e6f052dbd0e720db8aaad (link)

previous master: ef8d1d6f5b

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

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 ef8d1d6 (parent) -> 41f2b6b (this PR)

Test differences

Show 14 test diffs

Stage 1

  • [assembly] tests/assembly-llvm/x86_64-mcount.rs#x86_64-darwin: [missing] -> ignore (only executed when the target is x86_64-apple-darwin) (J0)
  • [assembly] tests/assembly-llvm/x86_64-mcount.rs#x86_64-linux: [missing] -> pass (J0)
  • iter::traits::accum::test_saturating_sum_product: [missing] -> pass (J1)

Stage 2

  • [assembly] tests/assembly-llvm/x86_64-mcount.rs#x86_64-linux: [missing] -> ignore (only executed when the target is x86_64-unknown-linux-gnu) (J2)
  • [assembly] tests/assembly-llvm/x86_64-mcount.rs#x86_64-darwin: [missing] -> ignore (only executed when the target is x86_64-apple-darwin) (J3)
  • [assembly] tests/assembly-llvm/x86_64-mcount.rs#x86_64-linux: [missing] -> pass (J4)

Additionally, 8 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 41f2b6b39e7526a28d50ff6918dda6de48add5e4 --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-aarch64-linux: 6101.4s -> 8376.8s (37.3%)
  2. aarch64-apple: 5484.7s -> 6205.7s (13.1%)
  3. pr-check-1: 1675.5s -> 1462.1s (-12.7%)
  4. dist-x86_64-apple: 7888.1s -> 6911.7s (-12.4%)
  5. x86_64-gnu-llvm-19-2: 5837.4s -> 6457.1s (10.6%)
  6. x86_64-gnu-miri: 4561.1s -> 5025.1s (10.2%)
  7. dist-loongarch64-linux: 6008.2s -> 6615.3s (10.1%)
  8. x86_64-gnu-tools: 3829.5s -> 3456.3s (-9.7%)
  9. aarch64-msvc-1: 7582.3s -> 6889.6s (-9.1%)
  10. x86_64-gnu-llvm-19: 2861.9s -> 2610.8s (-8.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.

@Zalathar Zalathar deleted the rollup-0dzk72g branch August 29, 2025 06:54
Caiweiran and others added 2 commits August 29, 2025 08:11
…ieyouxu

tests: Ignore basic-stepping.rs on riscv64

Same as [PR 145745](rust-lang#145745)

r? `@lqd`
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (41f2b6b): comparison URL.

Overall result: ❌✅ regressions and improvements - 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
Regressions ❌
(secondary)
0.1% [0.1%, 0.2%] 3
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.5% [-0.5%, -0.5%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary 3.2%, secondary -1.4%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
3.2% [3.2%, 3.2%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-1.4% [-1.4%, -1.4%] 1
All ❌✅ (primary) 3.2% [3.2%, 3.2%] 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: 465.841s -> 466.755s (0.20%)
Artifact size: 388.53 MiB -> 388.52 MiB (-0.00%)

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-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-run-make Area: port run-make Makefiles to rmake.rs A-rustdoc-json Area: Rustdoc JSON backend A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. O-unix Operating system: Unix-like 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.