Skip to content

Conversation

@JonathanBrouwer
Copy link
Contributor

@JonathanBrouwer JonathanBrouwer commented Jan 2, 2026

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Shunpoco and others added 14 commits December 27, 2025 09:08
If the tool (yarn) does not exists, spawn() raise an error, but the error message is just like a `No such file or directory`. So it is hard to understand which application/file/directory has a problem. This commit maps the error to expose the problem is around yarn.
Discovered while porting libstd to hexagon-unknown-qurt: the
unwinder data size refers to the count of pointers in _Unwind_Exception but
when I put the value "35" intiially for hexagon linux, I incorrectly
considered the size of the exception context hexagon_thread_state_t
data structure.

Correct the value for hexagon linux and expand it to cover all
hexagon architecture instead.
Corrected "work" to "works", and "byte vector" to "a byte vector" to match the phrasing of "a byte slice" in the documentation of the trait `AsMut`

Fixes rust-lang#149609
Fixes the sentence "Attempts to converts a Vec<u8> to a CString.", where "converts" should be in the base form as it is part of the to-infinitive form.
…Mark-Simulacrum

mapping an error from cmd.spawn() in npm::install

If the tool (yarn) has a problem, spawn in the install() raises an error, but the error message is hard to understand which/how application/file/directory has a problem. This commit enhances the error to explain why it fails.

For example, when I ran `./x test tidy --extra-checks=js`:
```bash
...
tidy check
tidy [extra_checks]: IO error: No such file or directory (os error 2)
tidy [extra_checks]: FAIL
tidy: The following check failed: extra_checks
```
.. It doesn't explain yarn has a problem (in that case, my env didn't have yarn).

After this PR, the same command prints:
```bash
tidy check
can not run yarn install
tidy [extra_checks]: IO error: unable to run yarn: entity not found
tidy [extra_checks]: FAIL
tidy: The following check failed: extra_checks
```
Expose kernel launch options as offload intrinsic args

Allows modifying the workgroup and thread grid dimensions directly from the intrinsic call.

```rust
core::intrinsics::offload(_kernel_1, [256, 1, 1], [32, 1, 1], (x,))
```

r? `@ZuseZ4`
…-Simulacrum

Correct hexagon "unwinder_private_data_size"

Discovered while porting libstd to hexagon-unknown-qurt: the unwinder data size refers to the count of pointers in _Unwind_Exception but when I put the value "35" intiially for hexagon linux, I incorrectly considered the size of the exception context hexagon_thread_state_t data structure.

Correct the value for hexagon linux and expand it to cover all hexagon architecture instead.
Fix a typo in the docs of AsMut for rust-lang#149609

This PR fixes the documentation of the trait `AsMut`, where in the sentence "[ ... ] interface which work with any type [ ... ]", "work" should be replaced by "works".

This also changes the later "[ ... ] into a byte slice ([u8]) or byte vector (Vec<u8>) [ ... ]" to be "[ ... ] into a byte slice ([u8]) or a byte vector (Vec<u8>) [ ... ]" to maintain consistency between "a byte slice" and "a byte vector".

Issue: rust-lang#149609
mir_build: Separate match lowering for string-equality and scalar-equality

- Follow-up to rust-lang#150238
---

This PR takes some match-lowering code that is responsible for equality tests, and splits it into distinct code paths for string-equality and scalar-equality.

The split results in more lines of code overall, but makes the separated code paths easier to understand individually.

r? Nadrieril
Fix typo in the docs of `CString::from_vec_with_nul`

This PR fixes the sentence "Attempts to converts a Vec<u8> to a CString." in the documentation of the method `CString::from_vec_with_nul` (line 639).

This is because "converts" in that sentence should form a to-infinitive form, and therefore should be in its base form.
@rustbot rustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-rustc-dev-guide Area: rustc-dev-guide 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 Jan 2, 2026
@JonathanBrouwer
Copy link
Contributor Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Jan 2, 2026

📌 Commit 3dc296a has been approved by JonathanBrouwer

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 Jan 2, 2026
@bors
Copy link
Collaborator

bors commented Jan 2, 2026

⌛ Testing commit 3dc296a with merge 85c8ff6...

@bors
Copy link
Collaborator

bors commented Jan 2, 2026

☀️ Test successful - checks-actions
Approved by: JonathanBrouwer
Pushing 85c8ff6 to main...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jan 2, 2026
@bors bors merged commit 85c8ff6 into rust-lang:main Jan 2, 2026
12 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Jan 2, 2026
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#150425 mapping an error from cmd.spawn() in npm::install b06184002dda641b85e7501490de21c768c84e13 (link)
#150444 Expose kernel launch options as offload intrinsic args bd7e85e7c2984d826f492e91f5be1c9bd9a72ee5 (link)
#150495 Correct hexagon "unwinder_private_data_size" 62377908fbe682ff57f16455ff89f07e2046044f (link)
#150578 Fix a typo in the docs of AsMut for #149609 62921609fc5dbf068682e42bad24f1c4433007f6 (link)
#150581 mir_build: Separate match lowering for string-equality and … c220666e2a236d47e5a5bc9bf958958bc8d1415e (link)
#150594 Fix typo in the docs of CString::from_vec_with_nul 341e3f33131b83526c920a69feee980c9f625c6f (link)

previous master: 5497a36a7f

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

@github-actions
Copy link
Contributor

github-actions bot commented Jan 2, 2026

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 5497a36 (parent) -> 85c8ff6 (this PR)

Test differences

Show 66 test diffs

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

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 85c8ff69cb3efd950395cc444a54bbbdad668865 --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-x86_64-apple: 9695.9s -> 6966.2s (-28.2%)
  2. dist-x86_64-netbsd: 4799.6s -> 6038.7s (+25.8%)
  3. pr-check-1: 1684.5s -> 1995.2s (+18.4%)
  4. x86_64-gnu-gcc: 3077.8s -> 3635.7s (+18.1%)
  5. x86_64-gnu-debug: 6243.6s -> 7370.2s (+18.0%)
  6. i686-gnu-nopt-1: 6884.0s -> 8060.0s (+17.1%)
  7. i686-gnu-2: 5343.6s -> 6230.5s (+16.6%)
  8. x86_64-gnu-tools: 3228.4s -> 3699.0s (+14.6%)
  9. x86_64-rust-for-linux: 2686.4s -> 3076.4s (+14.5%)
  10. dist-aarch64-llvm-mingw: 5736.6s -> 6441.5s (+12.3%)
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 (85c8ff6): comparison URL.

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

Max RSS (memory usage)

Results (primary 1.5%, secondary 1.8%)

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

mean range count
Regressions ❌
(primary)
1.5% [1.5%, 1.5%] 1
Regressions ❌
(secondary)
1.8% [1.8%, 1.8%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 1.5% [1.5%, 1.5%] 1

Cycles

Results (secondary 3.9%)

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)
3.9% [3.9%, 3.9%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

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

Bootstrap: 471.287s -> 473.026s (0.37%)
Artifact size: 390.83 MiB -> 390.79 MiB (-0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-rustc-dev-guide Area: rustc-dev-guide 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.

9 participants