Rollup of 7 pull requests#155175
Conversation
Add basic triagebot configuration
Add `Select` and `ToBytes` to prelude
…r-default docs(simd): fix `load_select_or_default` documentation
- beginners-guide.md: fix missing letter ("within you" → "within your")
- .github/PULL_REQUEST_TEMPLATE.md: remove duplicate word ("tests for test interactions" → "tests for interactions")
Fix typos in documentation
Adds `round_ties_even` using `simd_round_ties_even` intrinsic, matching the scalar `f32::round_ties_even` / `f64::round_ties_even` API. Closes rust-lang/portable-simd#390
Add exhuastive tests for `Mask::first_set` for all masks of size 8.
Apply two optimizations to `Mask::first_set`: 1) Move the call to `simd_cast` into the `const` block when initializing `index`. This removes runtime shuffles necessary to translate a `Simd<usize, N>` to a `Simd<T, N>`. 2) Replace the call to `mask.select` with `simd_or(!self, index)`. This is cheaper than doing a comparison and on some architectures the `or` can be combined with the `not` into a single instruction. See https://godbolt.org/z/YebG6aoMY for an example of the difference in generated assembly.
update `proptest` from `0.10` to `1.0`
Optimize `mask::first_set`
Add round_ties_even to StdFloat trait
bump toolchain to `nightly-2026-03-18`
* Add support for Hexagon HVX Add vendor module and tests for Qualcomm Hexagon HVX (Hexagon Vector eXtension) SIMD support. HVX provides wide vector operations in either 64-byte (512-bit) or 128-byte (1024-bit) mode. Note: u8x128/i8x128 types are not included because portable-simd currently limits lane count to 64 (bitmask operations use u64). In 128-byte HVX mode, u8x64 maps to a half-vector (512-bit). * fixup! Add support for Hexagon HVX fixup! Add support for Hexagon HVX Address reviewer feedback: - Remove hexagon_hvx test file (existing tests suffice with -C flags) - Move HvxVector imports into their respective cfg modules - Change u8x128/i8x128 comment to FIXME for discoverability
* remove time assertion on SystemTime * skip test only if when a time change occurs
* Add `f16` vector support * run `cargo update` * disable `f16` tests on wasm32 with simd128 llvm hangs in that case, see llvm/llvm-project#189251 * Add reference to LLVM issue causing f16 wasm ICE --------- Co-authored-by: Caleb Zulawski <caleb.zulawski@gmail.com>
…m-portable-simd-2026-04-11
…ark-Simulacrum Initial functions to start on transmute v2 For context, see rust-lang/rfcs#3844 and rust-lang/libs-team#772 *Experimental* still, tracked under rust-lang#155079 This is just library functions. A future PR will do compiler changes for things like lints.
…=Urgau add `cfg(target_object_format = "...")` tracking issue: rust-lang#152586 I'm implementing the predicate as `target_object_format`, because that's what is useful to me (for testing `#[link_section = "..."]` where `mach-o` has some extra restrictions) and maps cleanly to the `BinaryFormat` enum that is used internally. There is still room for a future `target_executable_format` when there is a use case. cc @joshtriplett as the lang sponsor of this feature, @workingjubilee as the author of the proposal. r? JonathanBrouwer a sidequest from the sidequest that is rust-lang#155065
…-2026-04-11, r=folkertdev Portable SIMD subtree update Let's see if this works (we might need a sync the other way first)
…-Simulacrum fix spurious test failure in `metadata_access_times` Fixes rust-lang#148408 The metadata_access_times test checks if the creation of a file occurs before another file, this check happens only on Linux. While on Win and Macos we check only that the created metadata is available. Given that the SystemTime is non monotonic as Instant this test could result in failures when the system clock changes.
…ng, r=WaffleLapkin,Kivooeo replace <name> @ ty::AliasTy matches with just using args: <name>_args ref rust-lang#154941 replace `<name> @ ty::AliasTy` matches with just using `args: <name>_args` I updated all occurrences where <name> @ ty::AliasTy became unnecessary after the change. In cases where both forms are still used, no changes were made. r? @WaffleLapkin
…lver-region-resolution, r=Kivooeo Fix min-specialization ICE from ignored region resolution failure Fixes rust-lang#151327 `min_specialization::get_impl_args` resolved regions and then immediately called `fully_resolve`, but it ignored failures from `resolve_regions_and_report_errors`. Propagate the region-resolution error instead of ignoring it. That matches the pattern used in: https://github.com/rust-lang/rust/blob/40a3ed1e1407ebbe892ce1a74128482ea1dadf7a/compiler/rustc_hir_analysis/src/check/compare_impl_item.rs#L706 https://github.com/rust-lang/rust/blob/40a3ed1e1407ebbe892ce1a74128482ea1dadf7a/compiler/rustc_hir_analysis/src/coherence/builtin.rs#L421
Reduce size of `ImportData` Perhaps this will undo the regression caused by rust-lang#152901
|
@bors r+ rollup=never p=5 |
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: bf4fbfb7a1 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
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 bf4fbfb (parent) -> 6ad4d1b (this PR) Test differencesShow 285 test diffsStage 1
Stage 2
Additionally, 220 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 6ad4d1b0e7fdafb8b71ada0844571c955d7afd70 --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 |
|
Finished benchmarking commit (6ad4d1b): comparison URL. Overall result: ❌✅ regressions and improvements - please read:Our 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.5%, secondary 0.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 3.2%, secondary 2.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 490.796s -> 488.442s (-0.48%) |
Successful merges:
cfg(target_object_format = "...")#155126 (addcfg(target_object_format = "..."))metadata_access_times#153871 (fix spurious test failure inmetadata_access_times)ImportData#155167 (Reduce size ofImportData)r? @ghost
Create a similar rollup