Table of Contents

Method YShuffleX3Kernel_CombineAvx

Namespace
Zyl.VectorTraits.Impl.AVector128
Assembly
VectorTraits.dll

YShuffleX3Kernel_CombineAvx(Vector128<int>, Vector128<int>, Vector128<int>, Vector128<int>)

Only shuffle on 3 vectors (在3个向量上进行仅换位). Creates a new vector by selecting values from an input vectors using a set of indices (通过使用一组索引从输入向量集中选择值,来创建一个新向量). If the index value is out of range, the result is undefined (若索引值超出范围, 结果是未定义的). Mnemonic: rt[i] := element_ref(indices[i], vector0, vector1, vector2). Conditions: 0<=indices[i] && indices[i]<(Count*3).

[CLSCompliant(false)]
public static Vector128<int> YShuffleX3Kernel_CombineAvx(Vector128<int> vector0, Vector128<int> vector1, Vector128<int> vector2, Vector128<int> indices)

Parameters

vector0 Vector128<int>

The input vector 0 from which values are selected (从中选择值的输入向量0).

vector1 Vector128<int>

The input vector 1 from which values are selected (从中选择值的输入向量1).

vector2 Vector128<int>

The input vector 2 from which values are selected (从中选择值的输入向量2).

indices Vector128<int>

The per-element indices used to select a value from vectors (用于从输入向量集中选择值的每个元素索引).

Returns

Vector128<int>

A new vector containing the values from input vectors selected by the given indices (一个新向量,其中包含给定 indices 从输入向量集中选择的值).

See Also

YShuffleX3Kernel_CombineAvx(Vector128<uint>, Vector128<uint>, Vector128<uint>, Vector128<uint>)

Only shuffle on 3 vectors (在3个向量上进行仅换位). Creates a new vector by selecting values from an input vectors using a set of indices (通过使用一组索引从输入向量集中选择值,来创建一个新向量). If the index value is out of range, the result is undefined (若索引值超出范围, 结果是未定义的). Mnemonic: rt[i] := element_ref(indices[i], vector0, vector1, vector2). Conditions: 0<=indices[i] && indices[i]<(Count*3).

[CLSCompliant(false)]
public static Vector128<uint> YShuffleX3Kernel_CombineAvx(Vector128<uint> vector0, Vector128<uint> vector1, Vector128<uint> vector2, Vector128<uint> indices)

Parameters

vector0 Vector128<uint>

The input vector 0 from which values are selected (从中选择值的输入向量0).

vector1 Vector128<uint>

The input vector 1 from which values are selected (从中选择值的输入向量1).

vector2 Vector128<uint>

The input vector 2 from which values are selected (从中选择值的输入向量2).

indices Vector128<uint>

The per-element indices used to select a value from vectors (用于从输入向量集中选择值的每个元素索引).

Returns

Vector128<uint>

A new vector containing the values from input vectors selected by the given indices (一个新向量,其中包含给定 indices 从输入向量集中选择的值).

See Also

YShuffleX3Kernel_CombineAvx(Vector128<long>, Vector128<long>, Vector128<long>, Vector128<long>)

Only shuffle on 3 vectors (在3个向量上进行仅换位). Creates a new vector by selecting values from an input vectors using a set of indices (通过使用一组索引从输入向量集中选择值,来创建一个新向量). If the index value is out of range, the result is undefined (若索引值超出范围, 结果是未定义的). Mnemonic: rt[i] := element_ref(indices[i], vector0, vector1, vector2). Conditions: 0<=indices[i] && indices[i]<(Count*3).

[CLSCompliant(false)]
public static Vector128<long> YShuffleX3Kernel_CombineAvx(Vector128<long> vector0, Vector128<long> vector1, Vector128<long> vector2, Vector128<long> indices)

Parameters

vector0 Vector128<long>

The input vector 0 from which values are selected (从中选择值的输入向量0).

vector1 Vector128<long>

The input vector 1 from which values are selected (从中选择值的输入向量1).

vector2 Vector128<long>

The input vector 2 from which values are selected (从中选择值的输入向量2).

indices Vector128<long>

The per-element indices used to select a value from vectors (用于从输入向量集中选择值的每个元素索引).

Returns

Vector128<long>

A new vector containing the values from input vectors selected by the given indices (一个新向量,其中包含给定 indices 从输入向量集中选择的值).

See Also

YShuffleX3Kernel_CombineAvx(Vector128<ulong>, Vector128<ulong>, Vector128<ulong>, Vector128<ulong>)

Only shuffle on 3 vectors (在3个向量上进行仅换位). Creates a new vector by selecting values from an input vectors using a set of indices (通过使用一组索引从输入向量集中选择值,来创建一个新向量). If the index value is out of range, the result is undefined (若索引值超出范围, 结果是未定义的). Mnemonic: rt[i] := element_ref(indices[i], vector0, vector1, vector2). Conditions: 0<=indices[i] && indices[i]<(Count*3).

[CLSCompliant(false)]
public static Vector128<ulong> YShuffleX3Kernel_CombineAvx(Vector128<ulong> vector0, Vector128<ulong> vector1, Vector128<ulong> vector2, Vector128<ulong> indices)

Parameters

vector0 Vector128<ulong>

The input vector 0 from which values are selected (从中选择值的输入向量0).

vector1 Vector128<ulong>

The input vector 1 from which values are selected (从中选择值的输入向量1).

vector2 Vector128<ulong>

The input vector 2 from which values are selected (从中选择值的输入向量2).

indices Vector128<ulong>

The per-element indices used to select a value from vectors (用于从输入向量集中选择值的每个元素索引).

Returns

Vector128<ulong>

A new vector containing the values from input vectors selected by the given indices (一个新向量,其中包含给定 indices 从输入向量集中选择的值).

See Also