about summary refs log tree commit diff
path: root/compiler/rustc_mir_transform/src/coverage/counters.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-09-30 04:05:26 +0000
committerbors <bors@rust-lang.org>2023-09-30 04:05:26 +0000
commit9136560d32440cc7cc0ab78353054c90648c070c (patch)
treed37adaa004e22a2e2b14aa82b7a96661f79afb97 /compiler/rustc_mir_transform/src/coverage/counters.rs
parent4efd65571e7ad62ca2cfb86271e7c6af192032ce (diff)
parenta9030e668867dda6eb153f8b2518491b2c38d1d7 (diff)
downloadrust-9136560d32440cc7cc0ab78353054c90648c070c.tar.gz
rust-9136560d32440cc7cc0ab78353054c90648c070c.zip
Auto merge of #115933 - oli-obk:simd_shuffle_const, r=workingjubilee
Prototype using const generic for simd_shuffle IDX array

cc https://github.com/rust-lang/rust/issues/85229

r? `@workingjubilee` on the design

TLDR: there is now a `fn simd_shuffle_generic<T, U, const IDX: &'static [u32]>(x: T, y: T) -> U;` intrinsic that allows replacing

```rust
simd_shuffle(a, b, const { stuff })
```

with

```rust
simd_shuffle_generic::<_, _, {&stuff}>(a, b)
```

which makes the compiler implementations much simpler, if we manage to at some point eliminate `simd_shuffle`.

There are some issues with this today though (can't do math without bubbling it up in the generic arguments). With this change, we can start porting the simple cases and get better data on the others.
Diffstat (limited to 'compiler/rustc_mir_transform/src/coverage/counters.rs')
0 files changed, 0 insertions, 0 deletions