Avx512DQ Class
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.
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>) |
__m512 _mm512_cvtepi64_ps (__m512i a) VCVTQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst |
ConvertToVector256Single(Vector512<Int64>, FloatRoundingMode) |
__m256 _mm512_cvt_roundepi64_ps (__m512i a, int r) VCVTQQ2PS ymm1, zmm2 {er} |
ConvertToVector256Single(Vector512<UInt64>) |
__m512 _mm512_cvtepu64_ps (__m512i a) VCVTUQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst |
ConvertToVector256Single(Vector512<UInt64>, FloatRoundingMode) |
__m256 _mm512_cvt_roundepu64_ps (__m512i a, int r) VCVTUQQ2PS ymm1, zmm2 {er} |
ConvertToVector512Double(Vector512<Int64>) |
__m512d _mm512_cvtepi64_pd (__m512i a) VCVTQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst |
ConvertToVector512Double(Vector512<Int64>, FloatRoundingMode) |
__m512d _mm512_cvt_roundepi64_pd (__m512i a, int r) VCVTQQ2PD zmm1, zmm2 {er} |
ConvertToVector512Double(Vector512<UInt64>) |
__m512d _mm512_cvtepu64_pd (__m512i a) VCVTUQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst |
ConvertToVector512Double(Vector512<UInt64>, FloatRoundingMode) |
__m512d _mm512_cvt_roundepu64_pd (__m512i a, int r) VCVTUQQ2PD zmm1, zmm2 {er} |
ConvertToVector512Int64(Vector256<Single>) |
__m512i _mm512_cvtps_epi64 (__m512 a) VCVTPS2QQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er} |
ConvertToVector512Int64(Vector256<Single>, FloatRoundingMode) |
__m512i _mm512_cvt_roundps_epi64 (__m512 a, int r) VCVTPS2QQ zmm1, ymm2 {er} |
ConvertToVector512Int64(Vector512<Double>) |
__m512i _mm512_cvtpd_epi64 (__m512d a) VCVTPD2QQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er} |
ConvertToVector512Int64(Vector512<Double>, FloatRoundingMode) |
__m512i _mm512_cvt_roundpd_epi64 (__m512d a, int r) VCVTPD2QQ zmm1, zmm2 {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>) |
__m512i _mm512_cvtps_epu64 (__m512 a) VCVTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er} |
ConvertToVector512UInt64(Vector256<Single>, FloatRoundingMode) |
__m512i _mm512_cvt_roundps_epu64 (__m512 a, int r) VCVTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er} |
ConvertToVector512UInt64(Vector512<Double>) |
__m512i _mm512_cvtpd_epu64 (__m512d a) VCVTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er} |
ConvertToVector512UInt64(Vector512<Double>, FloatRoundingMode) |
__m512i _mm512_cvt_roundpd_epu64 (__m512d a, int r) 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 |