Skip to content

Conversation

a4lg
Copy link
Contributor

@a4lg a4lg commented Sep 18, 2025

Subtree update of stdarch to rust-lang/stdarch@9f12c1a.

Created using https://github.com/rust-lang/josh-sync.

r? @Kobzol

dpaoliello and others added 30 commits August 10, 2025 13:19
The immediate here encodes both the rounding mode (in the low bits)
and the scale (in the high bits). Make sure the scale is non-zero.
wasm: use `{read, write}_unaligned` methods
…g-add-sub

use `simd_saturating_{add, sub}` on neon
It's historically been flaky and is no longer needed now that std_detect
has been moved out of this repository.
use `qemu-user` instead of `qemu-user-static` for loongarch CI
They don't need full "Zbc" extension but only its subset: the "Zbkc"
extension.  Since the compiler implies `zbkc` from `zbc`, it's safe to
use `#[target_feature(enable = "zbkc")]`.
…ments

RISC-V: Lower requirements of `clmul` and `clmulh`
a4lg and others added 5 commits September 12, 2025 11:51
This commit performs various improvements (better register allocation,
less register clobbering on the worst case and better readability) of
RISC-V inline assembly use cases.

Note that it does not change the `p` module (which defines the "P"
extension draft instructions but very likely to change).

1.  Use `lateout` as possible.
    Unlike `out(reg)` and `in(reg)` pair, `lateout(reg)` and `in(reg)`
    can share the same register because they state that the late-output
    register is written after all the reads are performed.
    It can improve register allocation.
2.  Add `preserves_flags` option as possible.
    While RISC-V doesn't have _regular_ condition codes, RISC-V inline
    assembly in the Rust language assumes that some registers
    (mainly vector state registers) may be overwritten by default.
    By adding `preserves_flags` to the intrinsics corresponding
    instructions without overwriting them, it can minimize register
    clobbering on the worst case.
3.  Use trailing semicolon.
    As `asm!` declares an action and it doesn't return a value by
    itself, it would be better to have trailing semicolon to denote that
    an `asm!` call is effectively a statement.
4.  Make most of `asm!` calls multi-lined.
    `rustfmt` makes some simple (yet long) `asm!` calls multi-lined but
    it does not perform formatting of complex `asm!` calls with inputs
    and/or outputs.  To keep consistency, it makes most of the `asm!`
    calls multi-lined.
Remove big-endian swizzles from `vreinterpret`
…improvements

RISC-V: Improvements of inline assembly uses
@rustbot
Copy link
Collaborator

rustbot commented Sep 18, 2025

stdarch is developed in its own repository. If possible, consider making this change to rust-lang/stdarch instead.

cc @Amanieu, @folkertdev, @sayantn

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Sep 18, 2025
@rustbot
Copy link
Collaborator

rustbot commented Sep 18, 2025

⚠️ Warning ⚠️

@a4lg
Copy link
Contributor Author

a4lg commented Sep 18, 2025

Technically, this PR is exactly the same as #146669 (but closed and reopened for additional safety).

@Kobzol
Copy link
Member

Kobzol commented Sep 18, 2025

CI (even PR CI) is always executed on the latest master branch :) Looks fine.

@bors r+

@bors
Copy link
Collaborator

bors commented Sep 18, 2025

📌 Commit c1242fa has been approved by Kobzol

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 Sep 18, 2025
jhpratt added a commit to jhpratt/rust that referenced this pull request Sep 19, 2025
bors added a commit that referenced this pull request Sep 19, 2025
Rollup of 8 pull requests

Successful merges:

 - #146229 (Automatically switch to lto-fat when flag RUSTFLAGS="- Zautodiff=Enable" is set)
 - #146615 (rustc_codegen_llvm: Feature Conversion Tidying)
 - #146638 (`rustc_next_trait_solver`: canonical out of `EvalCtxt`)
 - #146663 (Allow windows resource compiler to be overridden)
 - #146691 (std: Fix WASI implementation of `remove_dir_all`)
 - #146709 (stdarch subtree update)
 - #146731 (test: Use SVG for terminal url test)
 - #146738 (Fix tidy spellchecking on Windows)

r? `@ghost`
`@rustbot` modify labels: rollup
Zalathar added a commit to Zalathar/rust that referenced this pull request Sep 19, 2025
bors added a commit that referenced this pull request Sep 19, 2025
Rollup of 10 pull requests

Successful merges:

 - #146229 (Automatically switch to lto-fat when flag RUSTFLAGS="- Zautodiff=Enable" is set)
 - #146484 (rustdoc-search: JavaScript optimization based on Firefox Profiler output)
 - #146541 (std: simplify host lookup)
 - #146615 (rustc_codegen_llvm: Feature Conversion Tidying)
 - #146638 (`rustc_next_trait_solver`: canonical out of `EvalCtxt`)
 - #146663 (Allow windows resource compiler to be overridden)
 - #146691 (std: Fix WASI implementation of `remove_dir_all`)
 - #146709 (stdarch subtree update)
 - #146738 (Fix tidy spellchecking on Windows)
 - #146740 (miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit e09cc55 into rust-lang:master Sep 19, 2025
28 of 30 checks passed
@rustbot rustbot added this to the 1.92.0 milestone Sep 19, 2025
rust-timer added a commit that referenced this pull request Sep 19, 2025
Rollup merge of #146709 - a4lg:stdarch-sync-20250917, r=Kobzol

stdarch subtree update

Subtree update of `stdarch` to [rust-lang/stdarch@9f12c1a](rust-lang/stdarch@9f12c1a).

Created using https://github.com/rust-lang/josh-sync.

r? ```@Kobzol```
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Sep 20, 2025
Rollup of 10 pull requests

Successful merges:

 - rust-lang/rust#146229 (Automatically switch to lto-fat when flag RUSTFLAGS="- Zautodiff=Enable" is set)
 - rust-lang/rust#146484 (rustdoc-search: JavaScript optimization based on Firefox Profiler output)
 - rust-lang/rust#146541 (std: simplify host lookup)
 - rust-lang/rust#146615 (rustc_codegen_llvm: Feature Conversion Tidying)
 - rust-lang/rust#146638 (`rustc_next_trait_solver`: canonical out of `EvalCtxt`)
 - rust-lang/rust#146663 (Allow windows resource compiler to be overridden)
 - rust-lang/rust#146691 (std: Fix WASI implementation of `remove_dir_all`)
 - rust-lang/rust#146709 (stdarch subtree update)
 - rust-lang/rust#146738 (Fix tidy spellchecking on Windows)
 - rust-lang/rust#146740 (miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
Muscraft pushed a commit to Muscraft/rust that referenced this pull request Sep 24, 2025
Muscraft pushed a commit to Muscraft/rust that referenced this pull request Sep 24, 2025
Rollup of 10 pull requests

Successful merges:

 - rust-lang#146229 (Automatically switch to lto-fat when flag RUSTFLAGS="- Zautodiff=Enable" is set)
 - rust-lang#146484 (rustdoc-search: JavaScript optimization based on Firefox Profiler output)
 - rust-lang#146541 (std: simplify host lookup)
 - rust-lang#146615 (rustc_codegen_llvm: Feature Conversion Tidying)
 - rust-lang#146638 (`rustc_next_trait_solver`: canonical out of `EvalCtxt`)
 - rust-lang#146663 (Allow windows resource compiler to be overridden)
 - rust-lang#146691 (std: Fix WASI implementation of `remove_dir_all`)
 - rust-lang#146709 (stdarch subtree update)
 - rust-lang#146738 (Fix tidy spellchecking on Windows)
 - rust-lang#146740 (miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.

10 participants