Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

simd_bitmask: support vectors larger than 64 elements #3658

Open
RalfJung opened this issue Jun 9, 2024 · 0 comments
Open

simd_bitmask: support vectors larger than 64 elements #3658

RalfJung opened this issue Jun 9, 2024 · 0 comments
Labels
A-intrinsics Area: Affects out implementation of Rust intrinsics C-enhancement Category: a PR with an enhancement or an issue tracking an accepted enhancement

Comments

@RalfJung
Copy link
Member

RalfJung commented Jun 9, 2024

simd_bitmask (and simd_select_bitmask) are currently limited to vectors of at most 64 elements. Turns out portable-simd wants to scale to arbitrary sizes so Miri should follow suit.

However, the future of simd_bitmask is also unclear currently AFAIK -- the array-based version is not currently used by portable-simd, and the integer-based version cannot possibly support vectors large than 128 (since u128 is our biggest integer type). So we should wait until the dust settles around simd_bitmask, then we can implement the desired semantics.

@RalfJung RalfJung added C-enhancement Category: a PR with an enhancement or an issue tracking an accepted enhancement A-intrinsics Area: Affects out implementation of Rust intrinsics labels Jun 9, 2024
bors added a commit that referenced this issue Jun 9, 2024
simd_bitmask: nicer error when the mask is too big

Cc #3658
RalfJung pushed a commit to RalfJung/rust that referenced this issue Jun 9, 2024
simd_bitmask: nicer error when the mask is too big

Cc rust-lang/miri#3658
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-intrinsics Area: Affects out implementation of Rust intrinsics C-enhancement Category: a PR with an enhancement or an issue tracking an accepted enhancement
Projects
None yet
Development

No branches or pull requests

1 participant