Edit

Share via


Avx512DQ Class

Definition

Important

This API is not CLS-compliant.

Provides access to X86 AVX512DQ hardware instructions via intrinsics.

public ref class Avx512DQ abstract : System::Runtime::Intrinsics::X86::Avx512F
[System.CLSCompliant(false)]
public abstract class Avx512DQ : System.Runtime.Intrinsics.X86.Avx512F
[<System.CLSCompliant(false)>]
type Avx512DQ = class
    inherit Avx512F
Public MustInherit Class Avx512DQ
Inherits Avx512F
Inheritance
Attributes

Properties

IsSupported

Gets a value that indicates whether the APIs in this class are supported.

Methods

And(Vector512<Double>, Vector512<Double>)

__m512d _mm512_and_pd (__m512d a, __m512d b)

VANDPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

And(Vector512<Single>, Vector512<Single>)

__m512 _mm512_and_ps (__m512 a, __m512 b)

VANDPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

AndNot(Vector512<Double>, Vector512<Double>)

__m512d _mm512_andnot_pd (__m512d a, __m512d b)

VANDNPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

AndNot(Vector512<Single>, Vector512<Single>)

__m512 _mm512_andnot_ps (__m512 a, __m512 b)

VANDNPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

BroadcastPairScalarToVector512(Vector128<Int32>)

__m512i _mm512_broadcast_i32x2 (__m128i a)

VBROADCASTI32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastPairScalarToVector512(Vector128<Single>)

__m512 _mm512_broadcast_f32x2 (__m128 a)

VBROADCASTF32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastPairScalarToVector512(Vector128<UInt32>)

__m512i _mm512_broadcast_i32x2 (__m128i a)

VBROADCASTI32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastVector128ToVector512(Double*)

__m512d _mm512_broadcast_f64x2 (__m128d const * mem_addr)

VBROADCASTF64x2 zmm1 {k1}{z}, m128

BroadcastVector128ToVector512(Int64*)

__m512i _mm512_broadcast_i64x2 (__m128i const * mem_addr)

VBROADCASTI64x2 zmm1 {k1}{z}, m128

BroadcastVector128ToVector512(UInt64*)

__m512i _mm512_broadcast_i64x2 (__m128i const * mem_addr)

VBROADCASTI64x2 zmm1 {k1}{z}, m128

BroadcastVector256ToVector512(Int32*)

__m512i _mm512_broadcast_i32x8 (__m256i const * mem_addr)

VBROADCASTI32x8 zmm1 {k1}{z}, m256

BroadcastVector256ToVector512(Single*)

__m512 _mm512_broadcast_f32x8 (__m256 const * mem_addr)

VBROADCASTF32x8 zmm1 {k1}{z}, m256

BroadcastVector256ToVector512(UInt32*)

__m512i _mm512_broadcast_i32x8 (__m256i const * mem_addr)

VBROADCASTI32x8 zmm1 {k1}{z}, m256

ConvertToVector256Single(Vector512<Int64>, FloatRoundingMode)

__m256 _mm512_cvt_roundepi64_ps (__m512i a, int r)

VCVTQQ2PS ymm1, zmm2 {er}

ConvertToVector256Single(Vector512<Int64>)

__m512 _mm512_cvtepi64_ps (__m512i a)

VCVTQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector256Single(Vector512<UInt64>, FloatRoundingMode)

__m256 _mm512_cvt_roundepu64_ps (__m512i a, int r)

VCVTUQQ2PS ymm1, zmm2 {er}

ConvertToVector256Single(Vector512<UInt64>)

__m512 _mm512_cvtepu64_ps (__m512i a)

VCVTUQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector512Double(Vector512<Int64>, FloatRoundingMode)

__m512d _mm512_cvt_roundepi64_pd (__m512i a, int r)

VCVTQQ2PD zmm1, zmm2 {er}

ConvertToVector512Double(Vector512<Int64>)

__m512d _mm512_cvtepi64_pd (__m512i a)

VCVTQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector512Double(Vector512<UInt64>, FloatRoundingMode)

__m512d _mm512_cvt_roundepu64_pd (__m512i a, int r)

VCVTUQQ2PD zmm1, zmm2 {er}

ConvertToVector512Double(Vector512<UInt64>)

__m512d _mm512_cvtepu64_pd (__m512i a)

VCVTUQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector512Int64(Vector256<Single>, FloatRoundingMode)

__m512i _mm512_cvt_roundps_epi64 (__m512 a, int r)

VCVTPS2QQ zmm1, ymm2 {er}

ConvertToVector512Int64(Vector256<Single>)

__m512i _mm512_cvtps_epi64 (__m512 a)

VCVTPS2QQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512Int64(Vector512<Double>, FloatRoundingMode)

__m512i _mm512_cvt_roundpd_epi64 (__m512d a, int r)

VCVTPD2QQ zmm1, zmm2 {er}

ConvertToVector512Int64(Vector512<Double>)

__m512i _mm512_cvtpd_epi64 (__m512d a)

VCVTPD2QQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

ConvertToVector512Int64WithTruncation(Vector256<Single>)

__m512i _mm512_cvttps_epi64 (__m512 a)

VCVTTPS2QQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512Int64WithTruncation(Vector512<Double>)

__m512i _mm512_cvttpd_epi64 (__m512 a)

VCVTTPD2QQ zmm1 {k1}{z}, zmm2/m512/m64bcst{sae}

ConvertToVector512UInt64(Vector256<Single>, FloatRoundingMode)

__m512i _mm512_cvt_roundps_epu64 (__m512 a, int r)

VCVTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512UInt64(Vector256<Single>)

__m512i _mm512_cvtps_epu64 (__m512 a)

VCVTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512UInt64(Vector512<Double>, FloatRoundingMode)

__m512i _mm512_cvt_roundpd_epu64 (__m512d a, int r)

VCVTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

ConvertToVector512UInt64(Vector512<Double>)

__m512i _mm512_cvtpd_epu64 (__m512d a)

VCVTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

ConvertToVector512UInt64WithTruncation(Vector256<Single>)

__m512i _mm512_cvttps_epu64 (__m512 a)

VCVTTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512UInt64WithTruncation(Vector512<Double>)

__m512i _mm512_cvttpd_epu64 (__m512d a)

VCVTTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
ExtractVector128(Vector512<Double>, Byte)

__m128d _mm512_extractf64x2_pd (__m512d a, const int imm8)

VEXTRACTF64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector128(Vector512<Int64>, Byte)

__m128i _mm512_extracti64x2_epi64 (__m512i a, const int imm8)

VEXTRACTI64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector128(Vector512<UInt64>, Byte)

__m128i _mm512_extracti64x2_epi64 (__m512i a, const int imm8)

VEXTRACTI64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<Int32>, Byte)

__m256i _mm512_extracti32x8_epi32 (__m512i a, const int imm8)

VEXTRACTI32x8 ymm1/m256 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<Single>, Byte)

__m256 _mm512_extractf32x8_ps (__m512 a, const int imm8)

VEXTRACTF32x8 ymm1/m256 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<UInt32>, Byte)

__m256i _mm512_extracti32x8_epi32 (__m512i a, const int imm8)

VEXTRACTI32x8 ymm1/m256 {k1}{z}, zmm2, imm8

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
InsertVector128(Vector512<Double>, Vector128<Double>, Byte)

__m512d _mm512_insertf64x2_pd (__m512d a, __m128d b, int imm8)

VINSERTF64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector128(Vector512<Int64>, Vector128<Int64>, Byte)

__m512i _mm512_inserti64x2_si512 (__m512i a, __m128i b, const int imm8)

VINSERTI64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector128(Vector512<UInt64>, Vector128<UInt64>, Byte)

__m512i _mm512_inserti64x2_si512 (__m512i a, __m128i b, const int imm8)

VINSERTI64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector256(Vector512<Int32>, Vector256<Int32>, Byte)

__m512i _mm512_inserti32x8_si512 (__m512i a, __m256i b, const int imm8)

VINSERTI32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

InsertVector256(Vector512<Single>, Vector256<Single>, Byte)

__m512 _mm512_insertf32x8_ps (__m512 a, __m256 b, int imm8)

VINSERTF32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

InsertVector256(Vector512<UInt32>, Vector256<UInt32>, Byte)

__m512i _mm512_inserti32x8_si512 (__m512i a, __m256i b, const int imm8)

VINSERTI32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
MultiplyLow(Vector512<Int64>, Vector512<Int64>)

__m512i _mm512_mullo_epi64 (__m512i a, __m512i b)

VPMULLQ zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

MultiplyLow(Vector512<UInt64>, Vector512<UInt64>)

__m512i _mm512_mullo_epi64 (__m512i a, __m512i b)

VPMULLQ zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Or(Vector512<Double>, Vector512<Double>)

__m512d _mm512_or_pd (__m512d a, __m512d b)

VORPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Or(Vector512<Single>, Vector512<Single>)

__m512 _mm512_or_ps (__m512 a, __m512 b)

VORPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

Range(Vector512<Double>, Vector512<Double>, Byte)

__m512d _mm512_range_pd(__m512d a, __m512d b, int imm); VRANGEPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst{sae}, imm8

Range(Vector512<Single>, Vector512<Single>, Byte)

__m512 _mm512_range_ps(__m512 a, __m512 b, int imm); VRANGEPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst{sae}, imm8

RangeScalar(Vector128<Double>, Vector128<Double>, Byte)

__m128d _mm_range_sd(__m128d a, __m128d b, int imm); VRANGESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8

RangeScalar(Vector128<Single>, Vector128<Single>, Byte)

__m128 _mm_range_ss(__m128 a, __m128 b, int imm); VRANGESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8

Reduce(Vector512<Double>, Byte)

__m512d _mm512_reduce_pd(__m512d a, int imm); VREDUCEPD zmm1 {k1}{z}, zmm2/m512/m64bcst{sae}, imm8

Reduce(Vector512<Single>, Byte)

__m512 _mm512_reduce_ps(__m512 a, int imm); VREDUCEPS zmm1 {k1}{z}, zmm2/m512/m32bcst{sae}, imm8

ReduceScalar(Vector128<Double>, Byte)

__m128d _mm_reduce_sd(__m128d a, int imm); VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8

ReduceScalar(Vector128<Double>, Vector128<Double>, Byte)

__m128d _mm_reduce_sd(__m128d a, __m128d b, int imm); VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other scalar APIs.

ReduceScalar(Vector128<Single>, Byte)

__m128 _mm_reduce_ss(__m128 a, int imm); VREDUCESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8

ReduceScalar(Vector128<Single>, Vector128<Single>, Byte)

__m128 _mm_reduce_ss(__m128 a, __m128 b, int imm); VREDUCESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8 The above native signature does not exist. We provide this additional overload for consistency with the other scalar APIs.

ToString()

Returns a string that represents the current object.

(Inherited from Object)
Xor(Vector512<Double>, Vector512<Double>)

__m512d _mm512_xor_pd (__m512d a, __m512d b)

VXORPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Xor(Vector512<Single>, Vector512<Single>)

__m512 _mm512_xor_ps (__m512 a, __m512 b)

VXORPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

Applies to