Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Sync from portable simd 2026 07 20 - #159582

Merged
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20
Jul 22, 2026
Merged

Sync from portable simd 2026 07 20#159582
rust-bors[bot] merged 22 commits into
rust-lang:mainfrom
folkertdev:sync-from-portable-simd-2026-07-20

Conversation

@folkertdev

@folkertdevfolkertdev commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

r? @ghost

feel free to r+ once green

folkertdevand others added 17 commits April 12, 2026 13:26
the `float-cmp` and `num-traits` libraries don't (yet) support f16. Turns out we didn't really need much from them, just the ulps check. I've adapted the ulps check from miri instead
relevant for the cranelift backend, possibly other cases/targets too
Fix pointer API to match what was stabilized
We can do swizzles for 24, 32, 48 and 64 byte vectors by stacking multiple TBL
instructions.
See https://godbolt.org/z/PE95nrqjj for a comparison of the generated assembly.
Optimize `swizzle_dyn` for AArch64 with N > 16
`From` impls were already provided for the normal AArch64 ACLE vector types, but
not for the x2,x3,x4 tuples of ACLE vectors. Rectify that.
Also provide impls for vectors of `f16`, as I noticed they were missing.
For symmetry with `Mask::first_set`
…mpls
Provide `From` impls for AArch64 ACLE tuple types.
Use `impl` restrictions over hand-sealed traits
Optimize `swizzle_dyn` for LoongArch64 with N is 16 or 32
@rustbot

Copy link
Copy Markdown
Collaborator

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

cc @calebzulawski, @programmerjake

@rustbotrustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 19, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • The following commits have merge commits (commits with multiple parents) in your changes. We have a no merge policy so these commits will need to be removed for this pull request to be merged.

    You can start a rebase with the following commands:

    $ # rebase
    $ git pull --rebase https://github.com/rust-lang/rust.git main
    $ git push --force-with-lease
    

@rustbotrustbot added has-merge-commits PR has merge commits, merge with caution. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 19, 2026
@folkertdev

Copy link
Copy Markdown
ContributorAuthor

This sync (specifically ignoring f16 tests) will help with rust-lang/rustc_codegen_cranelift#1675

@rust-log-analyzer

This comment has been minimized.

@rustbotrustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Jul 20, 2026
@rust-log-analyzer

This comment has been minimized.

@rustbot

Copy link
Copy Markdown
Collaborator

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

@rust-log-analyzer

This comment has been minimized.

@RalfJung

Copy link
Copy Markdown
Member

That's the test running with Miri's deliberately-imprecise float operations. But it's odd that it would start failing now. Probably the test is already latently buggy in main but this PR triggers the bad non-determinism.

The fix should be to make

constLOG_APPROX:Self = 1e-2;
bigger on Miri.

@rustbot

Copy link
Copy Markdown
Collaborator

Any special-casing of Miri in the standard library requires review.

cc @rust-lang/miri

@folkertdev

Copy link
Copy Markdown
ContributorAuthor

@bors try jobs=x86_64-gnu-aux

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
…, r=<try>
Sync from portable simd 2026 07 20
try-job: x86_64-gnu-aux
@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b8f3ee8 (b8f3ee823c31d65751056ef71dd017ff752348b4)
Base parent: cde3f8a (cde3f8aee5a30928872e2438e3f18238a3fa306c)

@RalfJung

Copy link
Copy Markdown
Member

@bors r=oli-obk

@rust-bors

rust-borsBot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit e547ba4 has been approved by oli-obk

It is now in the queue for this repository.

@rust-borsrust-borsBot 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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 21, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jul 21, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
rust-borsBot pushed a commit that referenced this pull request Jul 21, 2026
Rollup of 12 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159411 ([rustdoc] Correctly handle output options with --show-coverage)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 22, 2026
…-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
This was referenced Jul 22, 2026
rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

⌛ Testing commit e547ba4 with merge 1192fdc...

Workflow: https://github.com/rust-lang/rust/actions/runs/29887627022

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
…, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@jhpratt

Copy link
Copy Markdown
Member

yielding to retrying the rollup

@bors yield

@rust-bors

rust-borsBot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Auto build was cancelled. Cancelled workflows:

The next pull request likely to be tested is #159697.

rust-borsBot pushed a commit that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- #159582 (Sync from portable simd 2026 07 20)
- #158890 (Fix splat v0 mangling)
- #159614 (debuginfo generation for unsafe binders)
- #159647 (Remove `early_exit` closures)
- #159656 (define a `Simd` type in `minicore`)
- #156474 (Add paths for linked associated items)
- #159211 (Fix debuginfo argument when invoking LLBC linker)
- #159527 (Bring runtime symbols statics on par with foreign functions)
- #159625 (Refactor is_opsem_inhabited)
- #159629 (Add more splat rust-call regression tests)
- #159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- #159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- #159663 (Add layout cycle hang regression test)
@rust-bors
rust-borsBot merged commit 1b34ade into rust-lang:mainJul 22, 2026
14 of 15 checks passed
rust-timer added a commit that referenced this pull request Jul 22, 2026
Rollup merge of #159582 - folkertdev:sync-from-portable-simd-2026-07-20, r=oli-obk
Sync from portable simd 2026 07 20
r? @ghost
feel free to `r+` once green
@rustbotrustbot added this to the 1.99.0 milestone Jul 22, 2026
pullBot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jul 22, 2026
Rollup of 13 pull requests
Successful merges:
- rust-lang/rust#159582 (Sync from portable simd 2026 07 20)
- rust-lang/rust#158890 (Fix splat v0 mangling)
- rust-lang/rust#159614 (debuginfo generation for unsafe binders)
- rust-lang/rust#159647 (Remove `early_exit` closures)
- rust-lang/rust#159656 (define a `Simd` type in `minicore`)
- rust-lang/rust#156474 (Add paths for linked associated items)
- rust-lang/rust#159211 (Fix debuginfo argument when invoking LLBC linker)
- rust-lang/rust#159527 (Bring runtime symbols statics on par with foreign functions)
- rust-lang/rust#159625 (Refactor is_opsem_inhabited)
- rust-lang/rust#159629 (Add more splat rust-call regression tests)
- rust-lang/rust#159652 (Remove `cfg(not(no_global_oom_handling))` from the `Drop` impl of `UniqueArcUninit`)
- rust-lang/rust#159657 (Remove the blanket `#![cfg_attr(test, allow(unused))]` from bootstrap )
- rust-lang/rust#159663 (Add layout cycle hang regression test)
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has-merge-commitsPR has merge commits, merge with caution.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-libsRelevant 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.

11 participants

@folkertdev@rustbot@rust-log-analyzer@RalfJung@oli-obk@jhpratt@calebzulawski@Kmeakin@heiher@programmerjake@workingjubilee