Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Nov 3, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Qelxiros and others added 30 commits September 15, 2025 15:25
This reverts commit 24f89ca53d3374ed8d3e0cbadc1dc89eea41acba.
intrinsic-test: test intrinsics with patched `core_arch`
memchr 2.7.6 contains a bugfix for aarch64_be
 - Correct mistake in x86_64/adx.rs where it was not testing `_addcarryx` at all
Use SIMD intrinsics whereever possible
_kshiftli_mask32 and _kshiftli_mask64 to zero out when the amount of
shift exceeds the bit length of the input argument.
zero out when the amount of shift exceeds the bit length of the input
argument.
to zero out when the amount of shift exceeds 16.
…tructions

`core_arch::x86` : Fix the implementation of `_kshift` instructions
Use SIMD intrinsics for `vfmaddsubph` and `vfmsubaddph`
Fixes for non-temporal intrinsics
folkertdev and others added 27 commits October 26, 2025 15:19
…-addition

`intrinsic-test`: Adding x86 behavioural testing.
Make some remaining X86 intrinsics safe
…n.rs`

In 9253e12 a bunch of `gdbr-check` (for `rust-gdb`) and
`gdbg-check` (for plain `gdb`) was added. But in two places the author
accidentally wrote `gdbt-check` instead. This commit fixes this typo.
Or worded differently, explicitly remark non-stable-guarantee of
`TypeId` layout and size.
This updates the rust-version file to 73e6c9e.
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 73e6c9e
Filtered ref: e8bb3cae4cd2b04bdc252cdf79102717db2b2d8d
Upstream diff: 32e7a4b...73e6c9e

This merge was created using https://github.com/rust-lang/josh-sync.
it is no longer used (and was also incorrect)
add SliceIndex wrapper types Last and Clamp<Idx>

Tracking issue: #146179
…, r=scottmcm

Make explicit that `TypeId`'s layout and size are unstable

Or worded differently, explicitly remark non-stable-guarantee of `TypeId` layout and size.

This PR makes no *additional* guarantees or non-guarantees, it only emphasizes that `TypeId`'s size and layout are unstable like any other `#[repr(Rust)]` types.

This was discussed during [#t-compiler/meetings > &#91;weekly&#93; 2025-10-30 @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/238009-t-compiler.2Fmeetings/topic/.5Bweekly.5D.202025-10-30/near/547949347), where the compiler team discussed a request #148265 to have the standard library (and language) commit to `TypeId` guaranteeing a size upper bound of 16 bytes. In the meeting, the consensus was:

- We were sympathetic to the use case discussed in the request PR, however we feel like this stability guarantee is premature, given that there are unresolved questions surrounding the intended purpose of `TypeId`, and concerns surrounding its collision-resistance properties #10389 and #129014. We would prefer not making any of such guarantee until the collision-resistance concerns are resolved.
- Committing to a stability guarantee on the size upper bound now would close the door to making `TypeId` larger (even if unlikely for perf reasons).

Given that we have previously broken people who asserted the size of `TypeId` is 8 bytes, it was also discussed in the meeting that we should *explicitly* note that the size and layout of `TypeId` is not a stable guarantee, and is subject to changes between Rust releases, and thus cannot be relied upon -- if breakage in people's code is due to that assumption, it will be considered a won't-fix.

- So even if `#[repr(Rust)]` types have unstable size and layout, this PR makes it explicit for `TypeId` since this type can feel "special" and users can be lead into thinking its size and layout is something they can rely upon.

r? `@scottmcm` (or libs/libs-api/lang)
stdarch subtree update

Subtree update of `stdarch` to rust-lang/stdarch@b5c1645.

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

r? `@sayantn`

---

Only the last 2 commits contain manual changes to some incorrect miri tests. The remainder is mechanical, and just synchronizes changes from stdarch.
Rollup of 3 pull requests

Successful merges:

 - #146260 (add SliceIndex wrapper types Last and Clamp<Idx>)
 - #148394 (Make explicit that `TypeId`'s layout and size are unstable)
 - #148402 (stdarch subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
tests: activate misspelled `gdb-check` in `function-arg-initialization.rs`

In 9253e12 a bunch of `gdbr-check` (for `rust-gdb`) directives and `gdbg-check` (for plain `gdb`) directives were added. But in two places the author accidentally wrote `gdbt-check` instead (`t` is next to `r` on the keyboard). This commit fixes that typo.

#129218 later renamed `gdbr-check` to just `gdb-check` which is why we rename to `gdb-check` directly.

The test still passes locally for me after the change, but fails if I change the `gdb-check` checks to check for some other string, so the check seems to still perform its intended function.

Note that we need to add a `std::hint::black_box()` to avoid

    $4 = <optimized out>

prints on at least `aarch64-gnu-llvm-20-1`.

After this there are no more instances of the string `gdbt` in the code base:
```console
$ git grep gdbt
```

try-job: dist-i586-gnu-i586-i686-musl
@pull pull bot locked and limited conversation to collaborators Nov 3, 2025
@pull pull bot added the ⤵️ pull label Nov 3, 2025
@pull pull bot merged commit 35ebdf9 into relaxcn:master Nov 3, 2025
1 check passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.