Module std::simd[][src]

🔬 This is a nightly-only experimental API. (portable_simd #86656)
Expand description

便携式 SIMD 模块。

该模块为 SIMD 操作提供了一个可移植的抽象,它不受任何特定硬件架构的约束。

Macros

simd_swizzleExperimental

通过从要使用的源 vector 或 vectors 的 lanes 中选择值来构造新的 vector。 当 swizzling 一个 vector 时,结果 vector 的索引由 usizeconst 数组表示,如 Swizzle。 当 swizzling 两个 vectors 时,索引由 Whichconst 数组表示,如 Swizzle2

Structs

LaneCountExperimental

表示 vector lane 数的类型。

MaskExperimental

Element 指定宽度的 LANES 元素的 SIMD vector 掩码。

SimdExperimental

T 类型的 LANES 元素的 SIMD vector。

Enums

WhichExperimental

两个 vectors 之一的索引。

Traits

MaskElementExperimental

可用作 SIMD 掩码元素的类型的标记 trait。

SimdElementExperimental

可用作 SIMD vector 元素的类型的标记 trait。 SAFETY: 这个 trait 在实现时断言编译器可以将标记类型作为元素的 #[repr(simd)] 结构体单态化。 严格地说,如果 vector 不会被错误编译,则 impl 是有效的。 实际上,如果 vector 无法编译,那么实现它对用户是不友好的,即使允许用户尝试并没有破坏健全性保证。

SupportedLaneCountExperimental

用于 vector lane 计数的助手 trait。

SwizzleExperimental

从另一个 vector 的元素创建一个 vector。

Swizzle2Experimental

从另外两个 vectors 的元素创建一个 vector。

Type Definitions

f32x2Experimental

两个 f32 值的 Vector

f32x4Experimental

四个 f32 值的 Vector

f32x8Experimental

八个 f32 值的 Vector

f32x16Experimental

16 个 f32 值的 Vector

f64x2Experimental

两个 f64 值的 Vector

f64x4Experimental

四个 f64 值的 Vector

f64x8Experimental

八个 f64 值的 Vector

i8x4Experimental

四个 i8 值的 Vector

i8x8Experimental

八个 i8 值的 Vector

i8x16Experimental

16 个 i8 值的 Vector

i8x32Experimental

32 个 i8 值的 Vector

i8x64Experimental

64 个 i8 值的 Vector

i16x2Experimental

两个 i16 值的 Vector

i16x4Experimental

四个 i16 值的 Vector

i16x8Experimental

八个 i16 值的 Vector

i16x16Experimental

16 个 i16 值的 Vector

i16x32Experimental

32 个 i16 值的 Vector

i32x2Experimental

两个 i32 值的 Vector

i32x4Experimental

四个 i32 值的 Vector

i32x8Experimental

八个 i32 值的 Vector

i32x16Experimental

16 个 i32 值的 Vector

i64x2Experimental

两个 i64 值的 Vector

i64x4Experimental

四个 i64 值的 Vector

i64x8Experimental

八个 i64 值的 Vector

isizex2Experimental

两个 isize 值的 Vector

isizex4Experimental

四个 isize 值的 Vector

isizex8Experimental

八个 isize 值的 Vector

mask8x8Experimental

八个 8 位掩码的 Vector

mask8x16Experimental

16 个 8 位掩码的 Vector

mask8x32Experimental

32 个 8 位掩码的 Vector

mask8x64Experimental

16 个 8 位掩码的 Vector

mask16x4Experimental

四个 16 位掩码的 Vector

mask16x8Experimental

八个 16 位掩码的 Vector

mask16x16Experimental

16 个 16 位掩码的 Vector

mask16x32Experimental

32 个 16 位掩码的 Vector

mask32x2Experimental

两个 32 位掩码的 Vector

mask32x4Experimental

四个 32 位掩码的 Vector

mask32x8Experimental

八个 32 位掩码的 Vector

mask32x16Experimental

16 个 32 位掩码的 Vector

mask64x2Experimental

两个 64 位掩码的 Vector

mask64x4Experimental

四个 64 位掩码的 Vector

mask64x8Experimental

八个 64 位掩码的 Vector

masksizex2Experimental

两个指针宽度掩码的 Vector

masksizex4Experimental

四个指针宽度掩码的 Vector

masksizex8Experimental

八个指针宽度掩码的 Vector

u8x4Experimental

四个 u8 值的 Vector

u8x8Experimental

八个 u8 值的 Vector

u8x16Experimental

16 个 u8 值的 Vector

u8x32Experimental

32 个 u8 值的 Vector

u8x64Experimental

64 个 u8 值的 Vector

u16x2Experimental

两个 u16 值的 Vector

u16x4Experimental

四个 u16 值的 Vector

u16x8Experimental

八个 u16 值的 Vector

u16x16Experimental

16 个 u16 值的 Vector

u16x32Experimental

32 个 u16 值的 Vector

u32x2Experimental

两个 u32 值的 Vector

u32x4Experimental

四个 u32 值的 Vector

u32x8Experimental

八个 u32 值的 Vector

u32x16Experimental

16 个 u32 值的 Vector

u64x2Experimental

两个 u64 值的 Vector

u64x4Experimental

四个 u64 值的 Vector

u64x8Experimental

八个 u64 值的 Vector

usizex2Experimental

两个 usize 值的 Vector

usizex4Experimental

四个 usize 值的 Vector

usizex8Experimental

八个 usize 值的 Vector