simd_shuffle: pass the idx argument as a vector
This commit is contained in:
parent
03f144596f
commit
7ccb13c178
1 changed files with 9 additions and 1 deletions
|
|
@ -114,10 +114,18 @@ macro_rules! types {
|
|||
)*);
|
||||
}
|
||||
|
||||
#[allow(unused)]
|
||||
#[repr(simd)]
|
||||
pub(crate) struct SimdShuffleIdx<const LEN: usize>(pub(crate) [u32; LEN]);
|
||||
|
||||
#[allow(unused)]
|
||||
macro_rules! simd_shuffle {
|
||||
($x:expr, $y:expr, $idx:expr $(,)?) => {{
|
||||
$crate::intrinsics::simd::simd_shuffle::<_, [u32; _], _>($x, $y, const { $idx })
|
||||
$crate::intrinsics::simd::simd_shuffle(
|
||||
$x,
|
||||
$y,
|
||||
const { $crate::core_arch::macros::SimdShuffleIdx($idx) },
|
||||
)
|
||||
}};
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue