Skip to content

Rollup of 14 pull requests - #147019

Merged
bors merged 32 commits into
rust-lang:masterfrom
Zalathar:rollup-boxzbmo
Sep 25, 2025
Merged

Rollup of 14 pull requests#147019
bors merged 32 commits into
rust-lang:masterfrom
Zalathar:rollup-boxzbmo

Conversation

@Zalathar

@ZalatharZalathar commented Sep 25, 2025

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

btjand others added 30 commits September 5, 2025 10:21
- RawVecInner::grow_exact causes UB if called with len and additional
arguments such that len + additional is less than the current
capacity. Indeed, in that case it calls Allocator::grow with a
new_layout that is smaller than old_layout, which violates a safety
precondition.
- All RawVecInner methods for resizing the buffer cause UB
if called with an elem_layout different from the one used to initially
allocate the buffer, because in that case Allocator::grow/shrink is called with
an old_layout that does not fit the allocated block, which violates a
safety precondition.
- RawVecInner::current_memory might cause UB if called with an elem_layout
different from the one used to initially allocate the buffer, because
the unchecked_mul might overflow.
- Furthermore, these methods cause UB if called with an elem_layout
where the size is not a multiple of the alignment. This is because
Layout::repeat is used (in layout_array) to compute the allocation's
layout when allocating, which includes padding to ensure alignment of
array elements, but simple multiplication is used (in current_memory) to
compute the old allocation's layout when resizing or deallocating, which
would cause the layout used to resize or deallocate to not fit the
allocated block, which violates a safety precondition.
Emit `#[rustc_allocator]` etc. attributes on the functions generated
by the `#[global_allocator]` macro, which will emit LLVM attributes
like `"alloc-family"`. If the module with the global allocator
participates in LTO, this ensures that the attributes typically
emitted on the allocator declarations are not lost if the
definition is imported.
LLVM change dfbd76bda01e removed separate remark support entirely, but
it turns out we can just drop the parameter and everything appears to
work fine.
Fixes 146912 as far as I can tell (the test passes.)
@rustbot label llvm-main
…monomorphization
Unify zero-length and oversized SIMD errors
Co-authored-by: Lewis McClelland <lewis@lewismcclelland.me>
Signed-off-by: Ding Xiang Fei <dingxiangfei2009@protonmail.ch>
Co-authored-by: Theemathas Chirananthavat <theemathas@gmail.com>
Co-authored-by: Ralf Jung <post@ralfj.de>
Although the examples below this list do imply that there's an impl of
`ToSocketAddrs` for `&[SocketAddr]`, it's not actually noted in the list
of default implementations.
On resource-constrained systems, it is vital to respect the value of
build.jobs, in order to avoid overwhelming the available memory.
RawVecInner: add missing `unsafe` to unsafe fns
Some (module-private) functions in `library/alloc/src/raw_vec/mod.rs` are unsafe (i.e. may cause UB when called from safe code) but are not marked `unsafe`. Specifically:
- `RawVecInner::grow_exact` causes UB if called with `len` and `additional` arguments such that `len + additional` is less than the current capacity. Indeed, in that case it calls [Allocator::grow](https://doc.rust-lang.org/std/alloc/trait.Allocator.html#method.grow) with a `new_layout` that is smaller than `old_layout`, which violates a safety precondition.
- The RawVecInner methods for resizing the buffer cause UB if called with an `elem_layout` different from the one used to initially allocate the buffer, because in that case `Allocator::grow` or `Allocator::shrink` are called with an `old_layout` that does not *fit* the allocated block, which violates a safety precondition.
- `RawVecInner::current_memory` might cause UB if called with an `elem_layout` different from the one used to initially allocate the buffer, because the `unchecked_mul` might overflow.
- Furthermore, these methods cause UB if called with an `elem_layout` where the size is not a multiple of the alignment. This is because `Layout::repeat` is used (in `layout_array`) to compute the allocation's layout when allocating, which includes padding to ensure alignment of array elements, but simple multiplication is used (in `current_memory`) to compute the old allocation's layout when resizing or deallocating, which would cause the layout used to resize or deallocate to not *fit* the allocated block, which violates a safety precondition.
I discovered these issues while performing formal verification of `library/alloc/src/raw_vec/mod.rs` per [Challenge 19](https://model-checking.github.io/verify-rust-std/challenges/0019-rawvec.html) of the [AWS Rust Standard Library Verification Contest](https://aws.amazon.com/blogs/opensource/verify-the-safety-of-the-rust-standard-library/).
…o-const, r=nnethercote
Do not materialise X in [X; 0] when X is unsizing a const
Fixrust-lang#143671
It turns out that MIR builder materialise `X` in `[X; 0]` into a temporary local when `X` is unsizing a `const`. This led to a confusing call to destructor of `X` when such a destructor is declared. [Playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=8dfc933af89efeb89c881bc77498ba63)
This patch may miss out other cases that we should avoid materialisation in case of `[X; 0]`. Suggestions to include is most welcome!
Add `std` support for `armv7a-vex-v5`
This PR adds standard library support for the VEX V5 Brain (`armv7a-vex-v5` target). It is more-or-less an updated version of the library-side work done in rust-lang#131530.
This was a joint effort between me, `@lewisfm,` `@max-niederman,` `@Gavin-Niederman` and several other members of the [`vexide` project](https://github.com/vexide/).
## Background
VEXos is a fairly unconventional operating system, with user code running in a restricted enviornment with regards to I/O capabilities and whatnot. As such, several OS-dependent APIs are unsupported or have partial support (such as `std::net`, `std::process`, and most of `std::thread`). A more comprehensive list of what does or doesn't work is outlined in the [updated target documentation](https://github.com/vexide/rust/blob/vex-std/src/doc/rustc/src/platform-support/armv7a-vex-v5.md). Despite these limitations, we believe that `libstd` support on this target still has value to users, especially given the popular use of this hardware for educational purposes. For some previous discussion on this matter, see [this comment](rust-lang#131530 (comment)).
## SDK Linkage
VEXos doesn't really ship with an official `libc` or POSIX-style platform API (and though it does port newlib, these are stubbed on top of the underlying SDK). Instead, VEX provides their own SDK for calling platform APIs. Their official SDK is kept proprietary (with public headers), though open-source implementations exist. Following the precedent of the `armv6k-nintendo-3ds` team's work in rust-lang#95897, we've opted not to directly link `libstd` to any SDK with the expectation that users will provide their own with one of the following options:
- [`vex-sdk-download`](https://github.com/vexide/vex-sdk/tree/main/packages/vex-sdk-download), which downloads an official proprietary SDK from VEX using a build script.
- [`vex-sdk-jumptable`](https://crates.io/crates/vex-sdk-jumptable), which is a compatible, open-source reimplementation of the SDK using firmware jumps.
- [`vex-sdk-pros`](https://github.com/vexide/vex-sdk/tree/main/packages/vex-sdk-pros), which uses the [PROS kernel](https://github.com/purduesigbots/pros) as a provider for SDK functions.
- Linking their own implementation or stubbing the functions required by libstd.
The `vex-sdk` crate used in the VEXos PAL provides `libc`-style FFI bindings for any compatible system library, so any of these options *should* work fine. A functional demo project using `vex-sdk-download` can be found [here](https://github.com/vexide/armv7a-vex-v5-demo/tree/main).
## Future Work
This PR implements virtually everything we are currently able to implement given the current capabilities of the platform. The exception to this is file directory enumeration, though the implementation of that is sufficiently [gross enough](https://github.com/vexide/vexide/blob/c6c5bad11e035cf4e51d429dca7e427210185ed4/packages/vexide-core/src/fs/mod.rs#L987) to drive us away from supporting this officially.
Additionally, I have a working branch implementing the `panic_unwind` runtime for this target, which is something that would be nice to see in the future, though given the volume of compiler changes i've deemed it out-of-scope for this PR.
…, r=lcnr,RalfJung
Add an attribute to check the number of lanes in a SIMD vector after monomorphization
Allows std::simd to drop the `LaneCount<N>: SupportedLaneCount` trait and maintain good error messages.
Also, extends rust-lang#145967 by including spans in layout errors for all ADTs.
r? ``@RalfJung``
cc ``@workingjubilee`` ``@programmerjake``
…,RalfJung
unstably constify float mul_add methods
Tracking issue: rust-lang#146724
r? `@tgross35`
f16_f128: enable some more tests in Miri
For some reason, a bunch of tests were disabled in Miri that don't use any fancy intrinsics. Let's enable them.
I verified this with `./x miri library/core --no-doc -- float`.
r? `@tgross35`
…cote
Add attributes for #[global_allocator] functions
Emit `#[rustc_allocator]` etc. attributes on the functions generated by the `#[global_allocator]` macro, which will emit LLVM attributes like `"alloc-family"`. If the module with the global allocator participates in LTO, this ensures that the attributes typically emitted on the allocator declarations are not lost if the definition is imported.
There is a similar issue when the allocator shim is used, but I've opted not to fix that case in this PR, because doing that cleanly is somewhat gnarly.
Related to rust-lang#145995.
… r=nikic
llvm: update remarks support on LLVM 22
LLVM change dfbd76bda01e removed separate remark support entirely, but
it turns out we can just drop the parameter and everything appears to
work fine.
Fixesrust-lang#146912 as far as I can tell (the test passes.)
…=bjorn3
Remove erroneous normalization step in `tests/run-make/linker-warning`
Fixesrust-lang#146977.
r? bjorn3 or reassign
…leanup, r=jdonszelmann
Small string formatting cleanup
This PR is mostly useless. I was going through this file, saw that and corrected it. That's pretty much it. Feel free to close it if it's a bother.
…oss35
Explicitly note `&[SocketAddr]` impl of `ToSocketAddrs`
Although the examples below this list do imply that there's an impl of `ToSocketAddrs` for `&[SocketAddr]`, it's not actually noted in the list of default implementations.
bootstrap.py: Respect build.jobs while building bootstrap tool
On resource-constrained systems, it is vital to respect the value of build.jobs, in order to avoid overwhelming the available memory.
@rustbotrustbot added 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. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. rollup A PR which is a rollup labels Sep 25, 2025
@Zalathar

Copy link
Copy Markdown
MemberAuthor

Rollup of everything not in #147003.

@bors r+ rollup=never p=5

@bors

bors commented Sep 25, 2025

Copy link
Copy Markdown
Collaborator

📌 Commit 59866ef has been approved by Zalathar

It is now in the queue for this repository.

@borsbors 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 Sep 25, 2025
@Zalathar

Copy link
Copy Markdown
MemberAuthor

Queue is mildly backed-up, so let's do some early try jobs.

@bors try jobs=x86_64-msvc-1,test-various,armhf-gnu,aarch64-apple

@rust-bors

This comment has been minimized.

rust-borsBot added a commit that referenced this pull request Sep 25, 2025
Rollup of 14 pull requests
try-job: x86_64-msvc-1
try-job: test-various
try-job: armhf-gnu
try-job: aarch64-apple
@rust-bors

rust-borsBot commented Sep 25, 2025

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 3837317 (383731785fc0ca22ba0c50e0d6d192449a774523, parent: bbcbc7818ba27c951f9fd881fd3ec4cd5123b741)

@bors

bors commented Sep 25, 2025

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 59866ef with merge 6f34f4e...

@bors

bors commented Sep 25, 2025

Copy link
Copy Markdown
Collaborator

☀️ Test successful - checks-actions
Approved by: Zalathar
Pushing 6f34f4e to master...

@borsbors added the merged-by-bors This PR was explicitly merged by bors. label Sep 25, 2025
@bors
bors merged commit 6f34f4e into rust-lang:masterSep 25, 2025
12 checks passed
@rustbotrustbot added this to the 1.92.0 milestone Sep 25, 2025
@github-actions

Copy link
Copy Markdown
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 7cfd7d3 (parent) -> 6f34f4e (this PR)

Test differences

Show 510 test diffs

Stage 0

  • error::verify_middle_erroneous_constant_15: pass -> [missing] (J2)
  • error::verify_middle_erroneous_constant_17: [missing] -> pass (J2)
  • error::verify_middle_invalid_const_in_valtree_18: pass -> [missing] (J2)
  • error::verify_middle_invalid_const_in_valtree_20: [missing] -> pass (J2)
  • error::verify_middle_layout_cycle_13: pass -> [missing] (J2)
  • error::verify_middle_layout_cycle_15: [missing] -> pass (J2)
  • error::verify_middle_layout_normalization_failure_12: pass -> [missing] (J2)
  • error::verify_middle_layout_normalization_failure_14: [missing] -> pass (J2)
  • error::verify_middle_layout_references_error_14: pass -> [missing] (J2)
  • error::verify_middle_layout_references_error_16: [missing] -> pass (J2)
  • error::verify_middle_layout_simd_too_many_12: [missing] -> pass (J2)
  • error::verify_middle_layout_simd_zero_length_13: [missing] -> pass (J2)
  • error::verify_middle_max_num_nodes_in_valtree_17: pass -> [missing] (J2)
  • error::verify_middle_max_num_nodes_in_valtree_19: [missing] -> pass (J2)
  • error::verify_middle_type_length_limit_16: pass -> [missing] (J2)
  • error::verify_middle_type_length_limit_18: [missing] -> pass (J2)
  • errors::verify_ty_utils_impl_trait_duplicate_arg_3: [missing] -> pass (J2)
  • errors::verify_ty_utils_impl_trait_duplicate_arg_5: pass -> [missing] (J2)
  • errors::verify_ty_utils_impl_trait_not_param_4: [missing] -> pass (J2)
  • errors::verify_ty_utils_impl_trait_not_param_6: pass -> [missing] (J2)
  • errors::verify_ty_utils_non_primitive_simd_type_2: [missing] -> pass (J2)
  • errors::verify_ty_utils_non_primitive_simd_type_4: pass -> [missing] (J2)
  • errors::verify_ty_utils_oversized_simd_type_3: pass -> [missing] (J2)
  • errors::verify_ty_utils_zero_length_simd_type_2: pass -> [missing] (J2)

Stage 1

  • error::verify_middle_erroneous_constant_15: pass -> [missing] (J0)
  • error::verify_middle_erroneous_constant_17: [missing] -> pass (J0)
  • error::verify_middle_invalid_const_in_valtree_18: pass -> [missing] (J0)
  • error::verify_middle_invalid_const_in_valtree_20: [missing] -> pass (J0)
  • error::verify_middle_layout_cycle_13: pass -> [missing] (J0)
  • error::verify_middle_layout_cycle_15: [missing] -> pass (J0)
  • error::verify_middle_layout_normalization_failure_12: pass -> [missing] (J0)
  • error::verify_middle_layout_normalization_failure_14: [missing] -> pass (J0)
  • error::verify_middle_layout_references_error_14: pass -> [missing] (J0)
  • error::verify_middle_layout_references_error_16: [missing] -> pass (J0)
  • error::verify_middle_layout_simd_too_many_12: [missing] -> pass (J0)
  • error::verify_middle_layout_simd_zero_length_13: [missing] -> pass (J0)
  • error::verify_middle_max_num_nodes_in_valtree_17: pass -> [missing] (J0)
  • error::verify_middle_max_num_nodes_in_valtree_19: [missing] -> pass (J0)
  • error::verify_middle_type_length_limit_16: pass -> [missing] (J0)
  • error::verify_middle_type_length_limit_18: [missing] -> pass (J0)
  • errors::verify_ty_utils_impl_trait_duplicate_arg_3: [missing] -> pass (J0)
  • errors::verify_ty_utils_impl_trait_duplicate_arg_5: pass -> [missing] (J0)
  • errors::verify_ty_utils_impl_trait_not_param_4: [missing] -> pass (J0)
  • errors::verify_ty_utils_impl_trait_not_param_6: pass -> [missing] (J0)
  • errors::verify_ty_utils_non_primitive_simd_type_2: [missing] -> pass (J0)
  • errors::verify_ty_utils_non_primitive_simd_type_4: pass -> [missing] (J0)
  • errors::verify_ty_utils_oversized_simd_type_3: pass -> [missing] (J0)
  • errors::verify_ty_utils_zero_length_simd_type_2: pass -> [missing] (J0)
  • [codegen] tests/codegen-llvm/global-allocator-attributes.rs: [missing] -> pass (J2)
  • [ui] tests/ui/coercion/no_local_for_coerced_const-issue-143671.rs: [missing] -> pass (J2)
  • [ui] tests/ui/simd/simd-lane-limit-err-npow2.rs: [missing] -> pass (J2)
  • [ui] tests/ui/simd/simd-lane-limit-err.rs: [missing] -> pass (J2)
  • [ui] tests/ui/simd/simd-lane-limit-ok.rs: [missing] -> pass (J2)
  • floats::f16::test_mul_add: pass -> [missing] (J7)
  • floats::f32::test_mul_add: pass -> [missing] (J7)
  • floats::f64::test_mul_add: pass -> [missing] (J7)
  • floats::mul_add::const_::test_f128: [missing] -> pass (J7)
  • floats::mul_add::const_::test_f16: [missing] -> pass (J7)
  • floats::mul_add::const_::test_f32: [missing] -> pass (J7)
  • floats::mul_add::const_::test_f64: [missing] -> pass (J7)
  • floats::mul_add::test_f128: [missing] -> pass (J7)
  • floats::mul_add::test_f16: [missing] -> pass (J7)
  • floats::mul_add::test_f32: [missing] -> pass (J7)
  • floats::mul_add::test_f64: [missing] -> pass (J7)

Stage 2

  • floats::f32::test_mul_add: pass -> [missing] (J1)
  • floats::f64::test_mul_add: pass -> [missing] (J1)
  • floats::mul_add::test_f128: [missing] -> pass (J1)
  • floats::mul_add::test_f16: [missing] -> pass (J1)
  • floats::mul_add::test_f32: [missing] -> pass (J1)
  • floats::mul_add::test_f64: [missing] -> pass (J1)
  • floats::mul_add::const_::test_f128: [missing] -> pass (J3)
  • floats::mul_add::const_::test_f16: [missing] -> pass (J3)
  • floats::mul_add::const_::test_f32: [missing] -> pass (J3)
  • floats::mul_add::const_::test_f64: [missing] -> pass (J3)
  • floats::sqrt_domain::test_f128: [missing] -> pass (J4)
  • floats::sqrt_domain::test_f16: [missing] -> pass (J4)
  • floats::total_cmp::test_f128: [missing] -> pass (J4)
  • floats::total_cmp::test_f16: [missing] -> pass (J4)
  • floats::total_cmp_s_nan::test_f128: [missing] -> pass (J4)
  • floats::total_cmp_s_nan::test_f16: [missing] -> pass (J4)
  • floats::f16::test_mul_add: pass -> [missing] (J5)
  • [ui] tests/ui/coercion/no_local_for_coerced_const-issue-143671.rs: [missing] -> pass (J6)
  • [ui] tests/ui/simd/simd-lane-limit-err-npow2.rs: [missing] -> pass (J6)
  • [ui] tests/ui/simd/simd-lane-limit-err.rs: [missing] -> pass (J6)
  • [ui] tests/ui/simd/simd-lane-limit-ok.rs: [missing] -> pass (J6)
  • floats::f32::test_mul_add: ignore -> [missing] (J8)
  • floats::f64::test_mul_add: ignore -> [missing] (J8)
  • floats::mul_add::test_f32: [missing] -> ignore (J8)
  • floats::mul_add::test_f64: [missing] -> ignore (J8)
  • floats::f128::test_mul_add: pass -> [missing] (J9)
  • [codegen] tests/codegen-llvm/global-allocator-attributes.rs: [missing] -> pass (J10)

Additionally, 419 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 6f34f4ee074ce0affc7bbf4e2c835f66cd576f13 --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. aarch64-apple: 6382.7s -> 7594.2s (19.0%)
  2. dist-aarch64-msvc: 5719.7s -> 6666.6s (16.6%)
  3. pr-check-1: 1346.5s -> 1562.6s (16.0%)
  4. dist-apple-various: 4824.4s -> 4160.1s (-13.8%)
  5. dist-aarch64-windows-gnullvm: 5178.9s -> 4643.6s (-10.3%)
  6. dist-i686-msvc: 7616.7s -> 8361.5s (9.8%)
  7. x86_64-mingw-2: 7926.9s -> 7161.0s (-9.7%)
  8. aarch64-gnu: 6565.4s -> 7150.7s (8.9%)
  9. x86_64-msvc-ext2: 5457.7s -> 5897.5s (8.1%)
  10. tidy: 180.7s -> 194.5s (7.6%)
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
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR#MessagePerf Build Sha
#145067RawVecInner: add missing unsafe to unsafe fnsc1e258c64d8d5069f082763f61e3d75ddc1c8a13 (link)
#145277Do not materialise X in [X; 0] when X is unsizing a constd7c9c1e068e51590507ce979d439e61c665280b0 (link)
#145973Add std support for armv7a-vex-v50ed426ff218ff1c4e74bfbcc81657b2d7bd6108a (link)
#146667Add an attribute to check the number of lanes in a SIMD vec…1c9bfecebf1be9e7daeba4957368ca8ccf57b5a4 (link)
#146735unstably constify float mul_add methodsa1c55eb1c9dcc1c939e56c71a60f8d1b0acba5ae (link)
#146737f16_f128: enable some more tests in Miriddb3704ee413eb6eabedcb824ab98b747bec61cf (link)
#146766Add attributes for #[global_allocator] functions17427f8dbdd84fad71be4a0f7e7a7fcbe418be85 (link)
#146905llvm: update remarks support on LLVM 22452e8838523b498429f9a4e03b02c8329e80cf65 (link)
#146982Remove erroneous normalization step in `tests/run-make/link…7c2ff77c9674a54d61b9841b92af37dcd0917bac (link)
#147005Small string formatting cleanup5b12a410292fa54e0084276c20ab757fefaa54ee (link)
#147007Explicitly note &[SocketAddr] impl of ToSocketAddrs5856f6ff4412ffd34d6e691c609fe5d7f83e554f (link)
#147008bootstrap.py: Respect build.jobs while building bootstrap t…fc6d39cf37b5e3b4480d2097f282e99c95b315e8 (link)
#147013rustdoc: Fix documentation for --doctest-build-arg9fee524ddc5934cbab371cca5db059377ae3155f (link)
#147015Use LLVMDisposeTargetMachinef8906ed16a826e1b47e079648d75e832d0e4b6b3 (link)

previous master: 7cfd7d328b

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

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (6f34f4e): 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.

meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-0.6%[-1.0%, -0.2%]11
All ❌✅ (primary)--0

Max RSS (memory usage)

Results (primary -2.3%, secondary 0.8%)

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

meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.8%[0.7%, 0.8%]4
Improvements ✅
(primary)
-2.3%[-2.3%, -2.3%]1
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-2.3%[-2.3%, -2.3%]1

Cycles

Results (primary 2.7%, secondary 0.1%)

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

meanrangecount
Regressions ❌
(primary)
2.7%[2.7%, 2.7%]1
Regressions ❌
(secondary)
3.3%[1.7%, 6.6%]4
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
-3.1%[-3.8%, -2.3%]4
All ❌✅ (primary)2.7%[2.7%, 2.7%]1

Binary size

Results (primary 0.0%, secondary 0.0%)

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

meanrangecount
Regressions ❌
(primary)
0.0%[0.0%, 0.0%]1
Regressions ❌
(secondary)
0.0%[0.0%, 0.0%]1
Improvements ✅
(primary)
--0
Improvements ✅
(secondary)
--0
All ❌✅ (primary)0.0%[0.0%, 0.0%]1

Bootstrap: 469.935s -> 471.619s (0.36%)
Artifact size: 388.04 MiB -> 388.14 MiB (0.03%)

@Zalathar
Zalathar deleted the rollup-boxzbmo branch September 25, 2025 23:02
github-actionsBot pushed a commit to model-checking/verify-rust-std that referenced this pull request Oct 9, 2025
Rollup of 14 pull requests
Successful merges:
- rust-lang#145067 (RawVecInner: add missing `unsafe` to unsafe fns)
- rust-lang#145277 (Do not materialise X in [X; 0] when X is unsizing a const)
- rust-lang#145973 (Add `std` support for `armv7a-vex-v5`)
- rust-lang#146667 (Add an attribute to check the number of lanes in a SIMD vector after monomorphization)
- rust-lang#146735 (unstably constify float mul_add methods)
- rust-lang#146737 (f16_f128: enable some more tests in Miri)
- rust-lang#146766 (Add attributes for #[global_allocator] functions)
- rust-lang#146905 (llvm: update remarks support on LLVM 22)
- rust-lang#146982 (Remove erroneous normalization step in `tests/run-make/linker-warning`)
- rust-lang#147005 (Small string formatting cleanup)
- rust-lang#147007 (Explicitly note `&[SocketAddr]` impl of `ToSocketAddrs`)
- rust-lang#147008 (bootstrap.py: Respect build.jobs while building bootstrap tool)
- rust-lang#147013 (rustdoc: Fix documentation for `--doctest-build-arg`)
- rust-lang#147015 (Use `LLVMDisposeTargetMachine`)
r? `@ghost`
`@rustbot` modify labels: rollup
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.A-run-makeArea: port run-make Makefiles to rmake.rsA-tidyArea: The tidy toolmerged-by-borsThis PR was explicitly merged by bors.rollupA PR which is a rollupS-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

17 participants

@Zalathar@bors@rust-timer@rustbot@btj@nikic@durin42@calebzulawski@RalfJung@tropicaaal@dingxiangfei2009@Qelxiros@GuillaumeGomez@LawnGnome@cuviper@fmease@neuschaefer