Avx10v1.TernaryLogic Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
TernaryLogic(Vector256<Int16>, Vector256<Int16>, Vector256<Int16>, Byte) |
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, short imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<Double>, Vector256<Double>, Vector256<Double>, Byte) |
__m256d _mm256_ternarylogic_pd (__m256d a, __m256d b, __m256d c, int imm) VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<Int32>, Vector256<Int32>, Vector256<Int32>, Byte) |
__m256i _mm256_ternarylogic_epi32 (__m256i a, __m256i b, __m256i c, int imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8 |
TernaryLogic(Vector256<Byte>, Vector256<Byte>, Vector256<Byte>, Byte) |
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, byte imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<SByte>, Vector256<SByte>, Vector256<SByte>, Byte) |
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, byte imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<Single>, Vector256<Single>, Vector256<Single>, Byte) |
__m256 _mm256_ternarylogic_ps (__m256 a, __m256 b, __m256 c, int imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<UInt16>, Vector256<UInt16>, Vector256<UInt16>, Byte) |
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, short imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector256<Int64>, Vector256<Int64>, Vector256<Int64>, Byte) |
__m256i _mm256_ternarylogic_epi64 (__m256i a, __m256i b, __m256i c, int imm) VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8 |
TernaryLogic(Vector128<UInt64>, Vector128<UInt64>, Vector128<UInt64>, Byte) |
__m128i _mm_ternarylogic_epi64 (__m128i a, __m128i b, __m128i c, int imm) VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8 |
TernaryLogic(Vector256<UInt32>, Vector256<UInt32>, Vector256<UInt32>, Byte) |
__m256i _mm256_ternarylogic_epi32 (__m256i a, __m256i b, __m256i c, int imm) VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8 |
TernaryLogic(Vector128<UInt16>, Vector128<UInt16>, Vector128<UInt16>, Byte) |
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, short imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<Single>, Vector128<Single>, Vector128<Single>, Byte) |
__m128 _mm_ternarylogic_ps (__m128 a, __m128 b, __m128 c, int imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<SByte>, Vector128<SByte>, Vector128<SByte>, Byte) |
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, byte imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<Int64>, Vector128<Int64>, Vector128<Int64>, Byte) |
__m128i _mm_ternarylogic_epi64 (__m128i a, __m128i b, __m128i c, int imm) VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8 |
TernaryLogic(Vector128<Int32>, Vector128<Int32>, Vector128<Int32>, Byte) |
__m128i _mm_ternarylogic_epi32 (__m128i a, __m128i b, __m128i c, int imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8 |
TernaryLogic(Vector128<Int16>, Vector128<Int16>, Vector128<Int16>, Byte) |
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, short imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<Double>, Vector128<Double>, Vector128<Double>, Byte) |
__m128d _mm_ternarylogic_pd (__m128d a, __m128d b, __m128d c, int imm) VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<Byte>, Vector128<Byte>, Vector128<Byte>, Byte) |
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, byte imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs. |
TernaryLogic(Vector128<UInt32>, Vector128<UInt32>, Vector128<UInt32>, Byte) |
__m128i _mm_ternarylogic_epi32 (__m128i a, __m128i b, __m128i c, int imm) VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8 |
TernaryLogic(Vector256<UInt64>, Vector256<UInt64>, Vector256<UInt64>, Byte) |
__m256i _mm256_ternarylogic_epi64 (__m256i a, __m256i b, __m256i c, int imm) VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8 |
TernaryLogic(Vector256<Int16>, Vector256<Int16>, Vector256<Int16>, Byte)
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, short imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<short> TernaryLogic(System::Runtime::Intrinsics::Vector256<short> a, System::Runtime::Intrinsics::Vector256<short> b, System::Runtime::Intrinsics::Vector256<short> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<short> TernaryLogic (System.Runtime.Intrinsics.Vector256<short> a, System.Runtime.Intrinsics.Vector256<short> b, System.Runtime.Intrinsics.Vector256<short> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<int16> * System.Runtime.Intrinsics.Vector256<int16> * System.Runtime.Intrinsics.Vector256<int16> * byte -> System.Runtime.Intrinsics.Vector256<int16>
Public Shared Function TernaryLogic (a As Vector256(Of Short), b As Vector256(Of Short), c As Vector256(Of Short), control As Byte) As Vector256(Of Short)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<Double>, Vector256<Double>, Vector256<Double>, Byte)
__m256d _mm256_ternarylogic_pd (__m256d a, __m256d b, __m256d c, int imm)
VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<double> TernaryLogic(System::Runtime::Intrinsics::Vector256<double> a, System::Runtime::Intrinsics::Vector256<double> b, System::Runtime::Intrinsics::Vector256<double> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<double> TernaryLogic (System.Runtime.Intrinsics.Vector256<double> a, System.Runtime.Intrinsics.Vector256<double> b, System.Runtime.Intrinsics.Vector256<double> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<double> * System.Runtime.Intrinsics.Vector256<double> * System.Runtime.Intrinsics.Vector256<double> * byte -> System.Runtime.Intrinsics.Vector256<double>
Public Shared Function TernaryLogic (a As Vector256(Of Double), b As Vector256(Of Double), c As Vector256(Of Double), control As Byte) As Vector256(Of Double)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<Int32>, Vector256<Int32>, Vector256<Int32>, Byte)
__m256i _mm256_ternarylogic_epi32 (__m256i a, __m256i b, __m256i c, int imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8
public:
static System::Runtime::Intrinsics::Vector256<int> TernaryLogic(System::Runtime::Intrinsics::Vector256<int> a, System::Runtime::Intrinsics::Vector256<int> b, System::Runtime::Intrinsics::Vector256<int> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<int> TernaryLogic (System.Runtime.Intrinsics.Vector256<int> a, System.Runtime.Intrinsics.Vector256<int> b, System.Runtime.Intrinsics.Vector256<int> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<int> * System.Runtime.Intrinsics.Vector256<int> * System.Runtime.Intrinsics.Vector256<int> * byte -> System.Runtime.Intrinsics.Vector256<int>
Public Shared Function TernaryLogic (a As Vector256(Of Integer), b As Vector256(Of Integer), c As Vector256(Of Integer), control As Byte) As Vector256(Of Integer)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<Byte>, Vector256<Byte>, Vector256<Byte>, Byte)
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, byte imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<System::Byte> TernaryLogic(System::Runtime::Intrinsics::Vector256<System::Byte> a, System::Runtime::Intrinsics::Vector256<System::Byte> b, System::Runtime::Intrinsics::Vector256<System::Byte> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<byte> TernaryLogic (System.Runtime.Intrinsics.Vector256<byte> a, System.Runtime.Intrinsics.Vector256<byte> b, System.Runtime.Intrinsics.Vector256<byte> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<byte> * System.Runtime.Intrinsics.Vector256<byte> * System.Runtime.Intrinsics.Vector256<byte> * byte -> System.Runtime.Intrinsics.Vector256<byte>
Public Shared Function TernaryLogic (a As Vector256(Of Byte), b As Vector256(Of Byte), c As Vector256(Of Byte), control As Byte) As Vector256(Of Byte)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<SByte>, Vector256<SByte>, Vector256<SByte>, Byte)
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, byte imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<System::SByte> TernaryLogic(System::Runtime::Intrinsics::Vector256<System::SByte> a, System::Runtime::Intrinsics::Vector256<System::SByte> b, System::Runtime::Intrinsics::Vector256<System::SByte> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<sbyte> TernaryLogic (System.Runtime.Intrinsics.Vector256<sbyte> a, System.Runtime.Intrinsics.Vector256<sbyte> b, System.Runtime.Intrinsics.Vector256<sbyte> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<sbyte> * System.Runtime.Intrinsics.Vector256<sbyte> * System.Runtime.Intrinsics.Vector256<sbyte> * byte -> System.Runtime.Intrinsics.Vector256<sbyte>
Public Shared Function TernaryLogic (a As Vector256(Of SByte), b As Vector256(Of SByte), c As Vector256(Of SByte), control As Byte) As Vector256(Of SByte)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<Single>, Vector256<Single>, Vector256<Single>, Byte)
__m256 _mm256_ternarylogic_ps (__m256 a, __m256 b, __m256 c, int imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<float> TernaryLogic(System::Runtime::Intrinsics::Vector256<float> a, System::Runtime::Intrinsics::Vector256<float> b, System::Runtime::Intrinsics::Vector256<float> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<float> TernaryLogic (System.Runtime.Intrinsics.Vector256<float> a, System.Runtime.Intrinsics.Vector256<float> b, System.Runtime.Intrinsics.Vector256<float> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<single> * System.Runtime.Intrinsics.Vector256<single> * System.Runtime.Intrinsics.Vector256<single> * byte -> System.Runtime.Intrinsics.Vector256<single>
Public Shared Function TernaryLogic (a As Vector256(Of Single), b As Vector256(Of Single), c As Vector256(Of Single), control As Byte) As Vector256(Of Single)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<UInt16>, Vector256<UInt16>, Vector256<UInt16>, Byte)
__m256i _mm256_ternarylogic_si256 (__m256i a, __m256i b, __m256i c, short imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector256<System::UInt16> TernaryLogic(System::Runtime::Intrinsics::Vector256<System::UInt16> a, System::Runtime::Intrinsics::Vector256<System::UInt16> b, System::Runtime::Intrinsics::Vector256<System::UInt16> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<ushort> TernaryLogic (System.Runtime.Intrinsics.Vector256<ushort> a, System.Runtime.Intrinsics.Vector256<ushort> b, System.Runtime.Intrinsics.Vector256<ushort> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<uint16> * System.Runtime.Intrinsics.Vector256<uint16> * System.Runtime.Intrinsics.Vector256<uint16> * byte -> System.Runtime.Intrinsics.Vector256<uint16>
Public Shared Function TernaryLogic (a As Vector256(Of UShort), b As Vector256(Of UShort), c As Vector256(Of UShort), control As Byte) As Vector256(Of UShort)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<Int64>, Vector256<Int64>, Vector256<Int64>, Byte)
__m256i _mm256_ternarylogic_epi64 (__m256i a, __m256i b, __m256i c, int imm)
VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8
public:
static System::Runtime::Intrinsics::Vector256<long> TernaryLogic(System::Runtime::Intrinsics::Vector256<long> a, System::Runtime::Intrinsics::Vector256<long> b, System::Runtime::Intrinsics::Vector256<long> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<long> TernaryLogic (System.Runtime.Intrinsics.Vector256<long> a, System.Runtime.Intrinsics.Vector256<long> b, System.Runtime.Intrinsics.Vector256<long> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<int64> * System.Runtime.Intrinsics.Vector256<int64> * System.Runtime.Intrinsics.Vector256<int64> * byte -> System.Runtime.Intrinsics.Vector256<int64>
Public Shared Function TernaryLogic (a As Vector256(Of Long), b As Vector256(Of Long), c As Vector256(Of Long), control As Byte) As Vector256(Of Long)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<UInt64>, Vector128<UInt64>, Vector128<UInt64>, Byte)
__m128i _mm_ternarylogic_epi64 (__m128i a, __m128i b, __m128i c, int imm)
VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8
public:
static System::Runtime::Intrinsics::Vector128<System::UInt64> TernaryLogic(System::Runtime::Intrinsics::Vector128<System::UInt64> a, System::Runtime::Intrinsics::Vector128<System::UInt64> b, System::Runtime::Intrinsics::Vector128<System::UInt64> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<ulong> TernaryLogic (System.Runtime.Intrinsics.Vector128<ulong> a, System.Runtime.Intrinsics.Vector128<ulong> b, System.Runtime.Intrinsics.Vector128<ulong> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<uint64> * System.Runtime.Intrinsics.Vector128<uint64> * System.Runtime.Intrinsics.Vector128<uint64> * byte -> System.Runtime.Intrinsics.Vector128<uint64>
Public Shared Function TernaryLogic (a As Vector128(Of ULong), b As Vector128(Of ULong), c As Vector128(Of ULong), control As Byte) As Vector128(Of ULong)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<UInt32>, Vector256<UInt32>, Vector256<UInt32>, Byte)
__m256i _mm256_ternarylogic_epi32 (__m256i a, __m256i b, __m256i c, int imm)
VPTERNLOGD ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8
public:
static System::Runtime::Intrinsics::Vector256<System::UInt32> TernaryLogic(System::Runtime::Intrinsics::Vector256<System::UInt32> a, System::Runtime::Intrinsics::Vector256<System::UInt32> b, System::Runtime::Intrinsics::Vector256<System::UInt32> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<uint> TernaryLogic (System.Runtime.Intrinsics.Vector256<uint> a, System.Runtime.Intrinsics.Vector256<uint> b, System.Runtime.Intrinsics.Vector256<uint> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<uint32> * System.Runtime.Intrinsics.Vector256<uint32> * System.Runtime.Intrinsics.Vector256<uint32> * byte -> System.Runtime.Intrinsics.Vector256<uint32>
Public Shared Function TernaryLogic (a As Vector256(Of UInteger), b As Vector256(Of UInteger), c As Vector256(Of UInteger), control As Byte) As Vector256(Of UInteger)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<UInt16>, Vector128<UInt16>, Vector128<UInt16>, Byte)
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, short imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<System::UInt16> TernaryLogic(System::Runtime::Intrinsics::Vector128<System::UInt16> a, System::Runtime::Intrinsics::Vector128<System::UInt16> b, System::Runtime::Intrinsics::Vector128<System::UInt16> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<ushort> TernaryLogic (System.Runtime.Intrinsics.Vector128<ushort> a, System.Runtime.Intrinsics.Vector128<ushort> b, System.Runtime.Intrinsics.Vector128<ushort> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<uint16> * System.Runtime.Intrinsics.Vector128<uint16> * System.Runtime.Intrinsics.Vector128<uint16> * byte -> System.Runtime.Intrinsics.Vector128<uint16>
Public Shared Function TernaryLogic (a As Vector128(Of UShort), b As Vector128(Of UShort), c As Vector128(Of UShort), control As Byte) As Vector128(Of UShort)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Single>, Vector128<Single>, Vector128<Single>, Byte)
__m128 _mm_ternarylogic_ps (__m128 a, __m128 b, __m128 c, int imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<float> TernaryLogic(System::Runtime::Intrinsics::Vector128<float> a, System::Runtime::Intrinsics::Vector128<float> b, System::Runtime::Intrinsics::Vector128<float> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<float> TernaryLogic (System.Runtime.Intrinsics.Vector128<float> a, System.Runtime.Intrinsics.Vector128<float> b, System.Runtime.Intrinsics.Vector128<float> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<single> * System.Runtime.Intrinsics.Vector128<single> * System.Runtime.Intrinsics.Vector128<single> * byte -> System.Runtime.Intrinsics.Vector128<single>
Public Shared Function TernaryLogic (a As Vector128(Of Single), b As Vector128(Of Single), c As Vector128(Of Single), control As Byte) As Vector128(Of Single)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<SByte>, Vector128<SByte>, Vector128<SByte>, Byte)
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, byte imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<System::SByte> TernaryLogic(System::Runtime::Intrinsics::Vector128<System::SByte> a, System::Runtime::Intrinsics::Vector128<System::SByte> b, System::Runtime::Intrinsics::Vector128<System::SByte> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<sbyte> TernaryLogic (System.Runtime.Intrinsics.Vector128<sbyte> a, System.Runtime.Intrinsics.Vector128<sbyte> b, System.Runtime.Intrinsics.Vector128<sbyte> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<sbyte> * System.Runtime.Intrinsics.Vector128<sbyte> * System.Runtime.Intrinsics.Vector128<sbyte> * byte -> System.Runtime.Intrinsics.Vector128<sbyte>
Public Shared Function TernaryLogic (a As Vector128(Of SByte), b As Vector128(Of SByte), c As Vector128(Of SByte), control As Byte) As Vector128(Of SByte)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Int64>, Vector128<Int64>, Vector128<Int64>, Byte)
__m128i _mm_ternarylogic_epi64 (__m128i a, __m128i b, __m128i c, int imm)
VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8
public:
static System::Runtime::Intrinsics::Vector128<long> TernaryLogic(System::Runtime::Intrinsics::Vector128<long> a, System::Runtime::Intrinsics::Vector128<long> b, System::Runtime::Intrinsics::Vector128<long> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<long> TernaryLogic (System.Runtime.Intrinsics.Vector128<long> a, System.Runtime.Intrinsics.Vector128<long> b, System.Runtime.Intrinsics.Vector128<long> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<int64> * System.Runtime.Intrinsics.Vector128<int64> * System.Runtime.Intrinsics.Vector128<int64> * byte -> System.Runtime.Intrinsics.Vector128<int64>
Public Shared Function TernaryLogic (a As Vector128(Of Long), b As Vector128(Of Long), c As Vector128(Of Long), control As Byte) As Vector128(Of Long)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Int32>, Vector128<Int32>, Vector128<Int32>, Byte)
__m128i _mm_ternarylogic_epi32 (__m128i a, __m128i b, __m128i c, int imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8
public:
static System::Runtime::Intrinsics::Vector128<int> TernaryLogic(System::Runtime::Intrinsics::Vector128<int> a, System::Runtime::Intrinsics::Vector128<int> b, System::Runtime::Intrinsics::Vector128<int> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<int> TernaryLogic (System.Runtime.Intrinsics.Vector128<int> a, System.Runtime.Intrinsics.Vector128<int> b, System.Runtime.Intrinsics.Vector128<int> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<int> * System.Runtime.Intrinsics.Vector128<int> * System.Runtime.Intrinsics.Vector128<int> * byte -> System.Runtime.Intrinsics.Vector128<int>
Public Shared Function TernaryLogic (a As Vector128(Of Integer), b As Vector128(Of Integer), c As Vector128(Of Integer), control As Byte) As Vector128(Of Integer)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Int16>, Vector128<Int16>, Vector128<Int16>, Byte)
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, short imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<short> TernaryLogic(System::Runtime::Intrinsics::Vector128<short> a, System::Runtime::Intrinsics::Vector128<short> b, System::Runtime::Intrinsics::Vector128<short> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<short> TernaryLogic (System.Runtime.Intrinsics.Vector128<short> a, System.Runtime.Intrinsics.Vector128<short> b, System.Runtime.Intrinsics.Vector128<short> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<int16> * System.Runtime.Intrinsics.Vector128<int16> * System.Runtime.Intrinsics.Vector128<int16> * byte -> System.Runtime.Intrinsics.Vector128<int16>
Public Shared Function TernaryLogic (a As Vector128(Of Short), b As Vector128(Of Short), c As Vector128(Of Short), control As Byte) As Vector128(Of Short)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Double>, Vector128<Double>, Vector128<Double>, Byte)
__m128d _mm_ternarylogic_pd (__m128d a, __m128d b, __m128d c, int imm)
VPTERNLOGQ xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<double> TernaryLogic(System::Runtime::Intrinsics::Vector128<double> a, System::Runtime::Intrinsics::Vector128<double> b, System::Runtime::Intrinsics::Vector128<double> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<double> TernaryLogic (System.Runtime.Intrinsics.Vector128<double> a, System.Runtime.Intrinsics.Vector128<double> b, System.Runtime.Intrinsics.Vector128<double> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<double> * System.Runtime.Intrinsics.Vector128<double> * System.Runtime.Intrinsics.Vector128<double> * byte -> System.Runtime.Intrinsics.Vector128<double>
Public Shared Function TernaryLogic (a As Vector128(Of Double), b As Vector128(Of Double), c As Vector128(Of Double), control As Byte) As Vector128(Of Double)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<Byte>, Vector128<Byte>, Vector128<Byte>, Byte)
__m128i _mm_ternarylogic_si128 (__m128i a, __m128i b, __m128i c, byte imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128, imm8
The above native signature does not exist. We provide this additional overload for consistency with the other bitwise APIs.
public:
static System::Runtime::Intrinsics::Vector128<System::Byte> TernaryLogic(System::Runtime::Intrinsics::Vector128<System::Byte> a, System::Runtime::Intrinsics::Vector128<System::Byte> b, System::Runtime::Intrinsics::Vector128<System::Byte> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<byte> TernaryLogic (System.Runtime.Intrinsics.Vector128<byte> a, System.Runtime.Intrinsics.Vector128<byte> b, System.Runtime.Intrinsics.Vector128<byte> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<byte> * System.Runtime.Intrinsics.Vector128<byte> * System.Runtime.Intrinsics.Vector128<byte> * byte -> System.Runtime.Intrinsics.Vector128<byte>
Public Shared Function TernaryLogic (a As Vector128(Of Byte), b As Vector128(Of Byte), c As Vector128(Of Byte), control As Byte) As Vector128(Of Byte)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector128<UInt32>, Vector128<UInt32>, Vector128<UInt32>, Byte)
__m128i _mm_ternarylogic_epi32 (__m128i a, __m128i b, __m128i c, int imm)
VPTERNLOGD xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8
public:
static System::Runtime::Intrinsics::Vector128<System::UInt32> TernaryLogic(System::Runtime::Intrinsics::Vector128<System::UInt32> a, System::Runtime::Intrinsics::Vector128<System::UInt32> b, System::Runtime::Intrinsics::Vector128<System::UInt32> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector128<uint> TernaryLogic (System.Runtime.Intrinsics.Vector128<uint> a, System.Runtime.Intrinsics.Vector128<uint> b, System.Runtime.Intrinsics.Vector128<uint> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector128<uint32> * System.Runtime.Intrinsics.Vector128<uint32> * System.Runtime.Intrinsics.Vector128<uint32> * byte -> System.Runtime.Intrinsics.Vector128<uint32>
Public Shared Function TernaryLogic (a As Vector128(Of UInteger), b As Vector128(Of UInteger), c As Vector128(Of UInteger), control As Byte) As Vector128(Of UInteger)
Parameters
- control
- Byte
Returns
Applies to
TernaryLogic(Vector256<UInt64>, Vector256<UInt64>, Vector256<UInt64>, Byte)
__m256i _mm256_ternarylogic_epi64 (__m256i a, __m256i b, __m256i c, int imm)
VPTERNLOGQ ymm1 {k1}{z}, ymm2, ymm3/m256/m64bcst, imm8
public:
static System::Runtime::Intrinsics::Vector256<System::UInt64> TernaryLogic(System::Runtime::Intrinsics::Vector256<System::UInt64> a, System::Runtime::Intrinsics::Vector256<System::UInt64> b, System::Runtime::Intrinsics::Vector256<System::UInt64> c, System::Byte control);
public static System.Runtime.Intrinsics.Vector256<ulong> TernaryLogic (System.Runtime.Intrinsics.Vector256<ulong> a, System.Runtime.Intrinsics.Vector256<ulong> b, System.Runtime.Intrinsics.Vector256<ulong> c, byte control);
static member TernaryLogic : System.Runtime.Intrinsics.Vector256<uint64> * System.Runtime.Intrinsics.Vector256<uint64> * System.Runtime.Intrinsics.Vector256<uint64> * byte -> System.Runtime.Intrinsics.Vector256<uint64>
Public Shared Function TernaryLogic (a As Vector256(Of ULong), b As Vector256(Of ULong), c As Vector256(Of ULong), control As Byte) As Vector256(Of ULong)
Parameters
- control
- Byte