Conversation
Updating crates.io index
Locking 17 packages to latest compatible versions
Updating addr2line v0.25.0 -> v0.25.1
Updating cfg-if v1.0.1 -> v1.0.4
Updating dlmalloc v0.2.10 -> v0.2.11
Updating gimli v0.32.0 -> v0.32.3
Updating vex-sdk v0.27.0 -> v0.27.1 (available: v0.28.0)
Adding windows-link v0.2.1
Updating windows-sys v0.59.0 -> v0.60.2
Updating windows-targets v0.52.6 -> v0.53.5
Updating windows_aarch64_gnullvm v0.52.6 -> v0.53.1
Updating windows_aarch64_msvc v0.52.6 -> v0.53.1
Updating windows_i686_gnu v0.52.6 -> v0.53.1
Updating windows_i686_gnullvm v0.52.6 -> v0.53.1
Updating windows_i686_msvc v0.52.6 -> v0.53.1
Updating windows_x86_64_gnu v0.52.6 -> v0.53.1
Updating windows_x86_64_gnullvm v0.52.6 -> v0.53.1
Updating windows_x86_64_msvc v0.52.6 -> v0.53.1
Updating wit-bindgen v0.45.0 -> v0.45.1
This sentence was unnecessarily complex; try to simplify it.
The overflow-checks codegen test was failing on riscv64gc target
because the FileCheck pattern did not account for ABI extension
attributes. RISC-V LP64 ABI requires integer types smaller than
XLEN (64-bit) to be zero-extended or sign-extended to register width.
For u8 parameters, RISC-V generates:
i8 noundef zeroext %a, i8 noundef zeroext %b
While x86_64 and aarch64 generate:
i8 noundef %a, i8 noundef %b
The original CHECK pattern only matched the format without the
`zeroext` attribute, causing test failures on RISC-V.
This patch makes the zeroext attribute optional in the FileCheck
pattern using `{{( zeroext)?}}`, allowing the test to pass on
architectures that add ABI extension attributes (e.g., RISC-V).
Test results before fix:
- x86_64-unknown-linux-gnu: 3 passed
- aarch64-unknown-linux-gnu: 3 passed
- riscv64gc-unknown-linux-gnu: 1 passed, 2 failed
Test results after fix:
- x86_64-unknown-linux-gnu: 3 passed
- aarch64-unknown-linux-gnu: 3 passed
- riscv64gc-unknown-linux-gnu: 3 passed
This enables rustup distribution of the rust-std component for the riscv64a23-unknown-linux-gnu target, allowing users to install it via `rustup target add riscv64a23-unknown-linux-gnu`.
The check is already done in enclosing code
…imulacrum `vec_recycle`: implementation Tracking issue: rust-lang#148227 Going with the `TransmuteFrom` approach suggested in rust-lang/libs-team#674 (comment), but a bit simplified. Currently does not work in some places where it should due to the limitations of the current implementation of the transmutability analysis: rust-lang#148227 (comment)
…_postings_from_string, r=GuillaumeGomez Micro-optimize rustdoc search index parsing This should pre-allocate the correct size for the `slot` vec. Not sure how much of a difference it'll make, but let's see.
…parts, r=Mark-Simulacrum Stabilize vec_into_raw_parts This stabilizes `Vec::into_raw_parts()` and `String::into_raw_parts()` per FCP in rust-lang#65816 (comment). While this _does not_ stabilize `Vec::into_parts()`, I fixed up the examples that said they were waiting for `vec_into_raw_parts`. As `Vec::from_parts()` and `Vec::into_parts()` are covered by the same feature `box_vec_non_null`, any doctest that uses `Vec::from_parts()` can also use `Vec::into_parts()` (and same for allocator-aware versions). Closes rust-lang#65816 ``@rustbot`` modify labels: +T-libs-api
…11-25, r=Mark-Simulacrum Bump library dependencies rust-lang#145849 (comment)
…ocs, r=Mark-Simulacrum
tweak primitive reference docs
This is a docs-only change for primitive reference.
I noticed a typo ("safe to use at type `T`") and fixed it to read "safe to use *as* type `T`".
While reading over the whole page, I also noticed another sentence that was hard to read. I tried to improve it: feel free to comment on the wisdom of this change...
…ecks-test-fail, r=Mark-Simulacrum
Fix overflow-checks test for RISC-V target
The overflow-checks codegen test was failing on riscv64gc target because the FileCheck pattern did not account for ABI extension attributes. RISC-V LP64 ABI requires integer types smaller than XLEN (64-bit) to be zero-extended or sign-extended to register width.
For u8 parameters, RISC-V generates:
i8 noundef zeroext %a, i8 noundef zeroext %b
While x86_64 and aarch64 generate:
i8 noundef %a, i8 noundef %b
The original CHECK pattern only matched the format without the `zeroext` attribute, causing test failures on RISC-V.
This patch makes the zeroext attribute optional in the FileCheck pattern using `{{( zeroext)?}}`, allowing the test to pass on architectures that add ABI extension attributes (e.g., RISC-V).
Test results before fix:
- x86_64-unknown-linux-gnu: 3 passed
- aarch64-unknown-linux-gnu: 3 passed
- riscv64gc-unknown-linux-gnu: 1 passed, 2 failed
Test results after fix:
- x86_64-unknown-linux-gnu: 3 passed
- aarch64-unknown-linux-gnu: 3 passed
- riscv64gc-unknown-linux-gnu: 3 passed
…-tier2, r=Mark-Simulacrum Add riscv64a23-unknown-linux-gnu to build-manifest TARGETS This enables rustup distribution of the rust-std component for the riscv64a23-unknown-linux-gnu target (Previous PR rust-lang#148435 missed this step.)
… r=bjorn3 re-enable wasm abi test The `wasm32-unknown-unknown` ABI has been fixed for a while now rust-lang#115666, so this test can be re-enabled and the fixme removed. r? ``@bjorn3``
runtest.rs: remove redundant check The check is already done in enclosing code
…Kivooeo Add another *ExprWithBlock* test for `try` blocks Looking to address this open item from rust-lang#31436 > Add a test confirming that it's an `ExprWithBlock`, so works in a match arm without a comma It turns out that rust-lang#120540 addressed that one, but it made me think of this other case that probably ought to have some kind of test as well.
… r=Kivooeo chore: Update annotate-snippets to 0.12.9 This PR updates `annotate-snippets` to `0.12.9`, which includes a fix for rust-lang#148070. fixes rust-lang#148070
|
Rollup of everything. @bors r+ rollup=never p=5 |
|
☀️ Test successful - checks-actions |
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 54f4176 (parent) -> 67c4cf3 (this PR) Test differencesShow 803 test diffsStage 1
Stage 2
Additionally, 798 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 67c4cf395f243afcb973dacdd39b16895c9ad295 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
📌 Perf builds for each rolled up PR:
previous master: 54f417673c In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
|
Finished benchmarking commit (67c4cf3): comparison URL. Overall result: ❌ regressions - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -3.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary -0.1%, secondary -0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 475.059s -> 473.917s (-0.24%) |
|
The clap_derive result looks pretty clearly bimodal. The secondary regressions are plausibly real, but don’t seem big enough to be worth investigating. |
|
perf triage: Marking as triaged based on the comment above [edit]: include_blob is possibly also noise. @rustbot label: +perf-regression-triaged |
Successful merges:
vec_recycle: implementation #148416 (vec_recycle: implementation)tryblocks #148968 (Add another ExprWithBlock test fortryblocks)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup