-
Notifications
You must be signed in to change notification settings - Fork 353
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 ICEs when result type is array #2734
Comments
This looks okay to me, Cc @workingjubilee is |
Also Cc @calebzulawski |
I'm surprised this passes in the rustc test suite... |
cg_llvm explicitly allows it. I don't think it is used though. https://github.com/rust-lang/rust/blob/1d12c3cea30b8ba4a09650a9e9c46fe9fbe25f0b/compiler/rustc_codegen_llvm/src/intrinsic.rs#L1096 |
I opened rust-lang/rust#105990 to remove it. This is needless complexity when there are dedicated stable functions for it in libstd |
Looks like this is a real thing, but I guess we can just make it an unsupported error |
Sounds like portable-simd will start using this as well (just hasn't been upstreamed yet). So we should just implement this. But we'll need tests that actually check that the bytes are all in the right order etc. Is this really the same as using |
it uses llvm bit vector order, which currently matches target byte-endian. |
see https://rust-lang.zulipchat.com/#narrow/stream/257879-project-portable-simd/topic/.E2.9C.94.20PR.20open.20to.20rust-lang.2Frust/near/260888464 |
support array return types in simd_bitmask Fixes rust-lang/miri#2734 As usual I am stomped by the simd_bitmask behavior wrt endianess. I confirmed that for little endian, Miri matches what rustc currently does, but I can't test rustc on big endian. `@workingjubilee` `@calebzulawski` could you have a look whether those new tests make sense?
from
src/test/ui/simd/simd-bitmask.rs
The text was updated successfully, but these errors were encountered: