[X86][AVX10.2] Remove YMM rounding from VCVTTP.*QS (#132414)
Ref: https://cdrdv2.intel.com/v1/dl/getContent/784343
This commit is contained in:
@@ -4615,7 +4615,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttpd2dqs256_round_mask : X86Builtin<"_Vector<4, int>(_Vector<4, double>, _Vector<4, int>, unsigned char, _Constant int)">;
|
||||
def vcvttpd2dqs256_mask : X86Builtin<"_Vector<4, int>(_Vector<4, double>, _Vector<4, int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4627,7 +4627,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttpd2udqs256_round_mask : X86Builtin<"_Vector<4, int>(_Vector<4, double>, _Vector<4, int>, unsigned char, _Constant int)">;
|
||||
def vcvttpd2udqs256_mask : X86Builtin<"_Vector<4, int>(_Vector<4, double>, _Vector<4, int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4639,7 +4639,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttpd2qqs256_round_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, double>, _Vector<4, long long int>, unsigned char, _Constant int)">;
|
||||
def vcvttpd2qqs256_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, double>, _Vector<4, long long int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4651,7 +4651,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttpd2uqqs256_round_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, double>, _Vector<4, long long int>, unsigned char, _Constant int)">;
|
||||
def vcvttpd2uqqs256_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, double>, _Vector<4, long long int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4663,7 +4663,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttps2dqs256_round_mask : X86Builtin<"_Vector<8, int>(_Vector<8, float>, _Vector<8, int>, unsigned char, _Constant int)">;
|
||||
def vcvttps2dqs256_mask : X86Builtin<"_Vector<8, int>(_Vector<8, float>, _Vector<8, int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4675,7 +4675,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttps2udqs256_round_mask : X86Builtin<"_Vector<8, int>(_Vector<8, float>, _Vector<8, int>, unsigned char, _Constant int)">;
|
||||
def vcvttps2udqs256_mask : X86Builtin<"_Vector<8, int>(_Vector<8, float>, _Vector<8, int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4687,7 +4687,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttps2qqs256_round_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, float>, _Vector<4, long long int>, unsigned char, _Constant int)">;
|
||||
def vcvttps2qqs256_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, float>, _Vector<4, long long int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
@@ -4699,7 +4699,7 @@ let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<128>] i
|
||||
}
|
||||
|
||||
let Features = "avx10.2-256", Attributes = [NoThrow, RequiredVectorWidth<256>] in {
|
||||
def vcvttps2uqqs256_round_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, float>, _Vector<4, long long int>, unsigned char, _Constant int)">;
|
||||
def vcvttps2uqqs256_mask : X86Builtin<"_Vector<4, long long int>(_Vector<4, float>, _Vector<4, long long int>, unsigned char)">;
|
||||
}
|
||||
|
||||
let Features = "avx10.2-512", Attributes = [NoThrow, RequiredVectorWidth<512>] in {
|
||||
|
||||
@@ -92,37 +92,22 @@ _mm_maskz_cvtts_pd_epi32(__mmask16 __U, __m128d __A) {
|
||||
// 256 Bit : Double -> int
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_pd_epi32(__m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_mask(
|
||||
(__v4df)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_pd_epi32(__m128i __W, __mmask8 __U, __m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_mask((__v4df)__A, (__v4si)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_pd_epi32(__mmask8 __U, __m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)_mm_setzero_si128(), __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2dqs256_mask(
|
||||
(__v4df)__A, (__v4si)_mm_setzero_si128(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundpd_epi32(__A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)_mm_undefined_si128(), \
|
||||
(__mmask8) - 1, (int)(__R)))
|
||||
|
||||
#define _mm256_mask_cvtts_roundpd_epi32(__W, __U, __A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)__W, (__mmask8)__U, (int)(__R)))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundpd_epi32(__U, __A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2dqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)_mm_setzero_si128(), \
|
||||
(__mmask8)__U, (int)(__R)))
|
||||
|
||||
// 128 Bit : Double -> uint
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
||||
_mm_cvtts_pd_epu32(__m128d __A) {
|
||||
@@ -145,37 +130,22 @@ _mm_maskz_cvtts_pd_epu32(__mmask8 __U, __m128d __A) {
|
||||
// 256 Bit : Double -> uint
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_pd_epu32(__m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_mask(
|
||||
(__v4df)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_pd_epu32(__m128i __W, __mmask8 __U, __m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_mask((__v4df)__A, (__v4si)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_pd_epu32(__mmask8 __U, __m256d __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask(
|
||||
(__v4df)__A, (__v4si)_mm_setzero_si128(), __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m128i)__builtin_ia32_vcvttpd2udqs256_mask(
|
||||
(__v4df)__A, (__v4si)_mm_setzero_si128(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundpd_epu32(__A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)_mm_undefined_si128(), \
|
||||
(__mmask8) - 1, (int)(__R)))
|
||||
|
||||
#define _mm256_mask_cvtts_roundpd_epu32(__W, __U, __A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)__W, (__mmask8)__U, (int)(__R)))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundpd_epu32(__U, __A, __R) \
|
||||
((__m128i)__builtin_ia32_vcvttpd2udqs256_round_mask( \
|
||||
(__v4df)(__m256d)__A, (__v4si)(__m128i)_mm_setzero_si128(), \
|
||||
(__mmask8)__U, (int)(__R)))
|
||||
|
||||
// 128 Bit : Double -> long
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
||||
_mm_cvtts_pd_epi64(__m128d __A) {
|
||||
@@ -198,37 +168,22 @@ _mm_maskz_cvtts_pd_epi64(__mmask8 __U, __m128d __A) {
|
||||
// 256 Bit : Double -> long
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_pd_epi64(__m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_pd_epi64(__m256i __W, __mmask8 __U, __m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_mask((__v4df)__A, (__v4di)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_pd_epi64(__mmask8 __U, __m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2qqs256_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundpd_epi64(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask( \
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8) - 1, \
|
||||
(int)__R))
|
||||
|
||||
#define _mm256_mask_cvtts_roundpd_epi64(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask((__v4df)__A, (__v4di)__W, \
|
||||
(__mmask8)__U, (int)__R))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundpd_epi64(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2qqs256_round_mask( \
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U, (int)__R))
|
||||
|
||||
// 128 Bit : Double -> ulong
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
||||
_mm_cvtts_pd_epu64(__m128d __A) {
|
||||
@@ -252,37 +207,22 @@ _mm_maskz_cvtts_pd_epu64(__mmask8 __U, __m128d __A) {
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_pd_epu64(__m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_pd_epu64(__m256i __W, __mmask8 __U, __m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_mask((__v4df)__A, (__v4di)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_pd_epu64(__mmask8 __U, __m256d __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttpd2uqqs256_mask(
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundpd_epu64(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask( \
|
||||
(__v4df)__A, (__v4di)_mm256_undefined_si256(), (__mmask8) - 1, \
|
||||
(int)__R))
|
||||
|
||||
#define _mm256_mask_cvtts_roundpd_epu64(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask( \
|
||||
(__v4df)__A, (__v4di)__W, (__mmask8)__U, (int)__R))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundpd_epu64(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttpd2uqqs256_round_mask( \
|
||||
(__v4df)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U, (int)__R))
|
||||
|
||||
// 128 Bit : float -> int
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtts_ps_epi32(__m128 __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttps2dqs128_mask(
|
||||
@@ -304,38 +244,22 @@ _mm_maskz_cvtts_ps_epi32(__mmask8 __U, __m128 __A) {
|
||||
// 256 Bit : float -> int
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_ps_epi32(__m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_ps_epi32(__m256i __W, __mmask8 __U, __m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_mask((__v8sf)__A, (__v8si)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_ps_epi32(__mmask8 __U, __m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2dqs256_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundps_epi32(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)_mm256_undefined_si256(), \
|
||||
(__mmask8) - 1, (int)(__R)))
|
||||
|
||||
#define _mm256_mask_cvtts_roundps_epi32(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)__W, (__mmask8)__U, (int)(__R)))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundps_epi32(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2dqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)_mm256_setzero_si256(), \
|
||||
(__mmask8)__U, (int)(__R)))
|
||||
|
||||
// 128 Bit : float -> uint
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtts_ps_epu32(__m128 __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttps2udqs128_mask(
|
||||
@@ -358,38 +282,22 @@ _mm_maskz_cvtts_ps_epu32(__mmask8 __U, __m128 __A) {
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_ps_epu32(__m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_ps_epu32(__m256i __W, __mmask8 __U, __m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_mask((__v8sf)__A, (__v8si)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_ps_epu32(__mmask8 __U, __m256 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2udqs256_mask(
|
||||
(__v8sf)__A, (__v8si)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundps_epu32(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)_mm256_undefined_si256(), \
|
||||
(__mmask8) - 1, (int)(__R)))
|
||||
|
||||
#define _mm256_mask_cvtts_roundps_epu32(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)__W, (__mmask8)__U, (int)(__R)))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundps_epu32(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2udqs256_round_mask( \
|
||||
(__v8sf)(__m256)__A, (__v8si)(__m256i)_mm256_setzero_si256(), \
|
||||
(__mmask8)__U, (int)(__R)))
|
||||
|
||||
// 128 bit : float -> long
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtts_ps_epi64(__m128 __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttps2qqs128_mask(
|
||||
@@ -411,37 +319,21 @@ _mm_maskz_cvtts_ps_epi64(__mmask8 __U, __m128 __A) {
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_ps_epi64(__m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_ps_epi64(__m256i __W, __mmask8 __U, __m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_mask((__v4sf)__A, (__v4di)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_ps_epi64(__mmask8 __U, __m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2qqs256_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundps_epi64(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)_mm256_undefined_si256(), (__mmask8) - 1, \
|
||||
(int)__R))
|
||||
|
||||
#define _mm256_mask_cvtts_roundps_epi64(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)__W, (__mmask8)__U, (int)__R))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundps_epi64(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2qqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U, \
|
||||
(int)__R))
|
||||
|
||||
// 128 bit : float -> ulong
|
||||
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtts_ps_epu64(__m128 __A) {
|
||||
return ((__m128i)__builtin_ia32_vcvttps2uqqs128_mask(
|
||||
@@ -463,38 +355,22 @@ _mm_maskz_cvtts_ps_epu64(__mmask8 __U, __m128 __A) {
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_cvtts_ps_epu64(__m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_mask_cvtts_ps_epu64(__m256i __W, __mmask8 __U, __m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)__W, __U, _MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_mask((__v4sf)__A, (__v4di)__W,
|
||||
__U));
|
||||
}
|
||||
|
||||
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
||||
_mm256_maskz_cvtts_ps_epu64(__mmask8 __U, __m128 __A) {
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_setzero_si256(), __U,
|
||||
_MM_FROUND_CUR_DIRECTION));
|
||||
return ((__m256i)__builtin_ia32_vcvttps2uqqs256_mask(
|
||||
(__v4sf)__A, (__v4di)_mm256_setzero_si256(), __U));
|
||||
}
|
||||
|
||||
#define _mm256_cvtts_roundps_epu64(__A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)_mm256_undefined_si256(), (__mmask8) - 1, \
|
||||
(int)__R))
|
||||
|
||||
#define _mm256_mask_cvtts_roundps_epu64(__W, __U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)__W, (__mmask8)__U, (int)__R))
|
||||
|
||||
#define _mm256_maskz_cvtts_roundps_epu64(__U, __A, __R) \
|
||||
((__m256i)__builtin_ia32_vcvttps2uqqs256_round_mask( \
|
||||
(__v4sf)(__m128)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U, \
|
||||
(int)__R))
|
||||
|
||||
#undef __DEFAULT_FN_ATTRS128
|
||||
#undef __DEFAULT_FN_ATTRS256
|
||||
#endif // __AVX10_2SATCVTDSINTRIN_H
|
||||
|
||||
@@ -315,21 +315,13 @@ bool SemaX86::CheckBuiltinRoundingOrSAE(unsigned BuiltinID, CallExpr *TheCall) {
|
||||
ArgNum = 4;
|
||||
HasRC = true;
|
||||
break;
|
||||
case X86::BI__builtin_ia32_vcvttpd2dqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2dqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2udqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2udqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2qqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2qqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2uqqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttpd2uqqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2dqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2dqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2udqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2udqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2qqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2qqs512_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2uqqs256_round_mask:
|
||||
case X86::BI__builtin_ia32_vcvttps2uqqs512_round_mask:
|
||||
ArgNum = 3;
|
||||
break;
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=i386-unknown-unknown -target-feature +avx10.2-256 -Wall -Werror -verify
|
||||
|
||||
unsigned long long test_mm_cvttssd(unsigned long long __A) {
|
||||
return _mm_cvttssd(__A); // expected-error {{call to undeclared function '_mm_cvttssd'}}
|
||||
}
|
||||
|
||||
unsigned long long test_mm_cvttsss(unsigned long long __A) {
|
||||
return _mm_cvttsss(__A); // expected-error {{call to undeclared function '_mm_cvttsss'}}
|
||||
}
|
||||
|
||||
#include <immintrin.h>
|
||||
#include <stddef.h>
|
||||
|
||||
__m128i test_mm256_cvtts_roundpd_epi32(__m256d A) {
|
||||
return _mm256_cvtts_roundpd_epi32(A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
__m128i test_mm256_mask_cvtts_roundpd_epi32(__m128i W, __mmask8 U, __m256d A) {
|
||||
return _mm256_mask_cvtts_roundpd_epi32(W, U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_roundpd_epi32(__mmask8 U, __m256d A) {
|
||||
return _mm256_maskz_cvtts_roundpd_epi32(U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m128i test_mm256_cvtts_roundpd_epu32(__m256d A) {
|
||||
return _mm256_cvtts_roundpd_epu32(A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
__m128i test_mm256_mask_cvtts_roundpd_epu32(__m128i W, __mmask8 U, __m256d A) {
|
||||
return _mm256_mask_cvtts_roundpd_epu32(W, U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_roundpd_epu32(__mmask8 U, __m256d A) {
|
||||
return _mm256_maskz_cvtts_roundpd_epu32(U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epi32(__m256 A) {
|
||||
return _mm256_cvtts_roundps_epi32(A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
__m256i test_mm256_mask_cvtts_roundps_epi32(__m256i W, __mmask8 U, __m256 A) {
|
||||
return _mm256_mask_cvtts_roundps_epi32(W, U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epi32(__mmask8 U, __m256 A) {
|
||||
return _mm256_maskz_cvtts_roundps_epi32(U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epu32(__m256 A) {
|
||||
return _mm256_cvtts_roundps_epu32(A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundps_epu32(__m256i W, __mmask8 U, __m256 A) {
|
||||
return _mm256_mask_cvtts_roundps_epu32(W, U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epu32(__mmask8 U, __m256 A) {
|
||||
return _mm256_maskz_cvtts_roundps_epu32(U, A, 22); // expected-error {{invalid rounding argument}}
|
||||
}
|
||||
@@ -82,76 +82,40 @@ __m128i test_mm_maskz_cvtts_pd_epu64(__mmask8 U,__m128d A){
|
||||
// 256 bit
|
||||
__m256i test_mm256_cvtts_pd_epi64(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_pd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.256(<4 x double>
|
||||
return _mm256_cvtts_pd_epi64(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_pd_epi64(__m256i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_pd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.256(<4 x double>
|
||||
return _mm256_mask_cvtts_pd_epi64(W,U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_pd_epi64(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_pd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_pd_epi64(U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundpd_epi64(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundpd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
return _mm256_cvtts_roundpd_epi64(A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundpd_epi64(__m256i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundpd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
return _mm256_mask_cvtts_roundpd_epi64(W,U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundpd_epi64(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundpd_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_roundpd_epi64(U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_pd_epu64(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_pd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.256(<4 x double>
|
||||
return _mm256_cvtts_pd_epu64(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_pd_epu64(__m256i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_pd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.256(<4 x double>
|
||||
return _mm256_mask_cvtts_pd_epu64(W,U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_pd_epu64(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_pd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_pd_epu64(U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundpd_epu64(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundpd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
return _mm256_cvtts_roundpd_epu64(A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundpd_epu64(__m256i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundpd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
return _mm256_mask_cvtts_roundpd_epu64(W,U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundpd_epu64(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundpd_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_roundpd_epu64(U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
// 128 bit
|
||||
__m128i test_mm_cvtts_ps_epi64(__m128 A){
|
||||
// CHECK-LABEL: @test_mm_cvtts_ps_epi64
|
||||
@@ -191,72 +155,36 @@ __m128i test_mm_maskz_cvtts_ps_epu64(__mmask8 U,__m128 A){
|
||||
|
||||
__m256i test_mm256_cvtts_ps_epi64(__m128 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_ps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.256(<4 x float>
|
||||
return _mm256_cvtts_ps_epi64(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_ps_epi64(__m256i W,__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_ps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.256(<4 x float>
|
||||
return _mm256_mask_cvtts_ps_epi64(W,U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_ps_epi64(__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_ps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.256(<4 x float>
|
||||
return _mm256_maskz_cvtts_ps_epi64(U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epi64(__m128 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
return _mm256_cvtts_roundps_epi64(A, _MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundps_epi64(__m256i W,__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
return _mm256_mask_cvtts_roundps_epi64(W,U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epi64(__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundps_epi64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>
|
||||
return _mm256_maskz_cvtts_roundps_epi64(U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_ps_epu64(__m128 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_ps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.256(<4 x float>
|
||||
return _mm256_cvtts_ps_epu64(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_ps_epu64(__m256i W,__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_ps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.256(<4 x float>
|
||||
return _mm256_mask_cvtts_ps_epu64(W,U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_ps_epu64(__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_ps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.256(<4 x float>
|
||||
return _mm256_maskz_cvtts_ps_epu64(U, A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epu64(__m128 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
return _mm256_cvtts_roundps_epu64(A, _MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundps_epu64(__m256i W,__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
return _mm256_mask_cvtts_roundps_epu64(W,U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epu64(__mmask8 U, __m128 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundps_epu64
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>
|
||||
return _mm256_maskz_cvtts_roundps_epu64(U,A,_MM_FROUND_NEARBYINT );
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=i386 -target-feature +avx10.2-256 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK,X86
|
||||
// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=x86_64 -target-feature +avx10.2-256 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK,X64
|
||||
// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=i386 -target-feature +avx10.2-256 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK
|
||||
// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=x86_64 -target-feature +avx10.2-256 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK
|
||||
|
||||
#include <immintrin.h>
|
||||
#include <stddef.h>
|
||||
@@ -24,40 +24,22 @@ __m128i test_mm_maskz_cvtts_pd_epi32( __mmask8 U, __m128d A){
|
||||
|
||||
__m128i test_mm256_cvtts_pd_epi32(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_pd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.256(<4 x double>
|
||||
return _mm256_cvtts_pd_epi32(A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_mask_cvtts_pd_epi32(__m128i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_pd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.256(<4 x double>
|
||||
return _mm256_mask_cvtts_pd_epi32(W,U,A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_pd_epi32(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_pd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_pd_epi32(U,A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_cvtts_roundpd_epi32(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundpd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
return _mm256_cvtts_roundpd_epi32(A, _MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm256_mask_cvtts_roundpd_epi32(__m128i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundpd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
return _mm256_mask_cvtts_roundpd_epi32(W,U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_roundpd_epi32(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundpd_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_roundpd_epi32(U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm_cvtts_pd_epu32(__m128d A){
|
||||
// CHECK-LABEL: @test_mm_cvtts_pd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.128(<2 x double>
|
||||
@@ -79,40 +61,22 @@ __m128i test_mm_maskz_cvtts_pd_epu32( __mmask8 U, __m128d A){
|
||||
|
||||
__m128i test_mm256_cvtts_pd_epu32(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_pd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.256(<4 x double>
|
||||
return _mm256_cvtts_pd_epu32(A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_mask_cvtts_pd_epu32(__m128i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_pd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.256(<4 x double>
|
||||
return _mm256_mask_cvtts_pd_epu32(W,U,A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_pd_epu32(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_pd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_pd_epu32(U,A);
|
||||
}
|
||||
|
||||
__m128i test_mm256_cvtts_roundpd_epu32(__m256d A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundpd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
return _mm256_cvtts_roundpd_epu32(A, _MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm256_mask_cvtts_roundpd_epu32(__m128i W,__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundpd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
return _mm256_mask_cvtts_roundpd_epu32(W,U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm256_maskz_cvtts_roundpd_epu32(__mmask8 U, __m256d A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundpd_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>
|
||||
return _mm256_maskz_cvtts_roundpd_epu32(U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm_cvtts_ps_epi32(__m128 A){
|
||||
// CHECK-LABEL: @test_mm_cvtts_ps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.128(<4 x float>
|
||||
@@ -133,40 +97,22 @@ __m128i test_mm_maskz_cvtts_ps_epi32( __mmask8 U, __m128 A){
|
||||
|
||||
__m256i test_mm256_cvtts_ps_epi32(__m256 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_ps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.256(<8 x float>
|
||||
return _mm256_cvtts_ps_epi32(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_ps_epi32(__m256i W,__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_ps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.256(<8 x float>
|
||||
return _mm256_mask_cvtts_ps_epi32(W,U,A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_ps_epi32(__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_ps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.256(<8 x float>
|
||||
return _mm256_maskz_cvtts_ps_epi32(U,A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epi32(__m256 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
return _mm256_cvtts_roundps_epi32(A, _MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundps_epi32(__m256i W,__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
return _mm256_mask_cvtts_roundps_epi32(W,U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epi32(__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundps_epi32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>
|
||||
return _mm256_maskz_cvtts_roundps_epi32(U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m128i test_mm_cvtts_ps_epu32(__m128 A){
|
||||
// CHECK-LABEL: @test_mm_cvtts_ps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.128(<4 x float>
|
||||
@@ -187,39 +133,18 @@ __m128i test_mm_maskz_cvtts_ps_epu32( __mmask8 U, __m128 A){
|
||||
|
||||
__m256i test_mm256_cvtts_ps_epu32(__m256 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_ps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.256(<8 x float>
|
||||
return _mm256_cvtts_ps_epu32(A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_ps_epu32(__m256i W,__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_ps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.256(<8 x float>
|
||||
return _mm256_mask_cvtts_ps_epu32(W,U,A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_ps_epu32(__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_ps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.256(<8 x float>
|
||||
return _mm256_maskz_cvtts_ps_epu32(U,A);
|
||||
}
|
||||
|
||||
__m256i test_mm256_cvtts_roundps_epu32(__m256 A){
|
||||
// CHECK-LABEL: @test_mm256_cvtts_roundps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
return _mm256_cvtts_roundps_epu32(A, _MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m256i test_mm256_mask_cvtts_roundps_epu32(__m256i W,__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_mask_cvtts_roundps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
return _mm256_mask_cvtts_roundps_epu32(W,U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
__m256i test_mm256_maskz_cvtts_roundps_epu32(__mmask8 U, __m256 A){
|
||||
// CHECK-LABEL: @test_mm256_maskz_cvtts_roundps_epu32
|
||||
// CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>
|
||||
return _mm256_maskz_cvtts_roundps_epu32(U,A,_MM_FROUND_NEARBYINT);
|
||||
}
|
||||
|
||||
// X64: {{.*}}
|
||||
// X86: {{.*}}
|
||||
|
||||
@@ -5113,72 +5113,72 @@ let TargetPrefix = "x86" in {
|
||||
def int_x86_avx10_mask_vcvttpd2dqs_128 : ClangBuiltin<"__builtin_ia32_vcvttpd2dqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v2f64_ty, llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2dqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttpd2dqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f64_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2dqs_256: ClangBuiltin<"__builtin_ia32_vcvttpd2dqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f64_ty, llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2dqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttpd2dqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f64_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2udqs_128 : ClangBuiltin<"__builtin_ia32_vcvttpd2udqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v2f64_ty,llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2udqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttpd2udqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f64_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2udqs_256: ClangBuiltin<"__builtin_ia32_vcvttpd2udqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f64_ty, llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2udqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttpd2udqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f64_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2qqs_128 : ClangBuiltin<"__builtin_ia32_vcvttpd2qqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v2i64_ty], [llvm_v2f64_ty,llvm_v2i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2qqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttpd2qqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f64_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2qqs_256: ClangBuiltin<"__builtin_ia32_vcvttpd2qqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f64_ty, llvm_v4i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2qqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttpd2qqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i64_ty], [llvm_v8f64_ty, llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2uqqs_128 : ClangBuiltin<"__builtin_ia32_vcvttpd2uqqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v2i64_ty], [llvm_v2f64_ty,llvm_v2i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2uqqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttpd2uqqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f64_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttpd2uqqs_256: ClangBuiltin<"__builtin_ia32_vcvttpd2uqqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f64_ty, llvm_v4i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttpd2uqqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttpd2uqqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i64_ty], [llvm_v8f64_ty, llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2dqs_128 : ClangBuiltin<"__builtin_ia32_vcvttps2dqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f32_ty, llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2dqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttps2dqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f32_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2dqs_256: ClangBuiltin<"__builtin_ia32_vcvttps2dqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f32_ty, llvm_v8i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2dqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttps2dqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v16i32_ty], [llvm_v16f32_ty, llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2udqs_128 : ClangBuiltin<"__builtin_ia32_vcvttps2udqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i32_ty], [llvm_v4f32_ty, llvm_v4i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2udqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttps2udqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f32_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2udqs_256: ClangBuiltin<"__builtin_ia32_vcvttps2udqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i32_ty], [llvm_v8f32_ty, llvm_v8i32_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2udqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttps2udqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v16i32_ty], [llvm_v16f32_ty, llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2qqs_128 : ClangBuiltin<"__builtin_ia32_vcvttps2qqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v2i64_ty], [llvm_v4f32_ty, llvm_v2i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2qqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttps2qqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f32_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2qqs_256: ClangBuiltin<"__builtin_ia32_vcvttps2qqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f32_ty, llvm_v4i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2qqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttps2qqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i64_ty], [llvm_v8f32_ty, llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2uqqs_128 : ClangBuiltin<"__builtin_ia32_vcvttps2uqqs128_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v2i64_ty], [llvm_v4f32_ty,llvm_v2i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2uqqs_round_256: ClangBuiltin<"__builtin_ia32_vcvttps2uqqs256_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f32_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
def int_x86_avx10_mask_vcvttps2uqqs_256: ClangBuiltin<"__builtin_ia32_vcvttps2uqqs256_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v4i64_ty], [llvm_v4f32_ty, llvm_v4i64_ty, llvm_i8_ty],
|
||||
[IntrNoMem]>;
|
||||
def int_x86_avx10_mask_vcvttps2uqqs_round_512 : ClangBuiltin<"__builtin_ia32_vcvttps2uqqs512_round_mask">,
|
||||
DefaultAttrsIntrinsic<[llvm_v8i64_ty], [llvm_v8f32_ty, llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
|
||||
[IntrNoMem, ImmArg<ArgIndex<3>>]>;
|
||||
|
||||
@@ -492,11 +492,6 @@ multiclass avx10_cvttps2dqs<bits<8> opc, string OpcodeStr, SDPatternOperator OpN
|
||||
defm Z256 : avx512_vcvt_fp<opc, OpcodeStr, v8i32x_info, v8f32x_info, OpNode,
|
||||
MaskOpNode, sched.YMM>, EVEX_V256;
|
||||
}
|
||||
|
||||
let Predicates = [HasAVX10_2], hasEVEX_U=1 in {
|
||||
defm Z256 : avx512_vcvt_fp_sae<opc, OpcodeStr, v8i32x_info, v8f32x_info,
|
||||
OpNodeSAE, sched.YMM>, EVEX_V256;
|
||||
}
|
||||
}
|
||||
|
||||
defm VCVTTPD2DQS : avx10_cvttpd2dqs<0x6D, "vcvttpd2dqs", X86cvttp2sis,
|
||||
|
||||
@@ -523,26 +523,26 @@ static const IntrinsicData IntrinsicsWithoutChain[] = {
|
||||
X86ISD::CVTP2IUBS, X86ISD::CVTP2IUBS_RND),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2dqs_128, CVTPD2DQ_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::MCVTTP2SIS),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2dqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2dqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2dqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2qqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2qqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2qqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2qqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2udqs_128, CVTPD2DQ_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::MCVTTP2SIS),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2udqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2udqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2udqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2uqqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2uqqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2uqqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttpd2uqqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttph2ibs128, INTR_TYPE_1OP_MASK,
|
||||
@@ -559,8 +559,8 @@ static const IntrinsicData IntrinsicsWithoutChain[] = {
|
||||
X86ISD::CVTTP2IUBS, X86ISD::CVTTP2IUBS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2dqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2dqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2dqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2dqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2ibs128, INTR_TYPE_1OP_MASK,
|
||||
@@ -577,20 +577,20 @@ static const IntrinsicData IntrinsicsWithoutChain[] = {
|
||||
X86ISD::CVTTP2IUBS, X86ISD::CVTTP2IUBS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2qqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2qqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2qqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2qqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2SIS, X86ISD::CVTTP2SIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2udqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2udqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2udqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2udqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2uqqs_128, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2uqqs_round_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2uqqs_256, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, 0),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vcvttps2uqqs_round_512, INTR_TYPE_1OP_MASK,
|
||||
X86ISD::CVTTP2UIS, X86ISD::CVTTP2UIS_SAE),
|
||||
X86_INTRINSIC_DATA(avx10_mask_vminmaxpd_round, INTR_TYPE_3OP_MASK_SAE,
|
||||
|
||||
@@ -90,7 +90,7 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2dqs_256(<4 x double> %x0, <4 x i32>
|
||||
; X86-NEXT: vmovaps %xmm1, %xmm0 # EVEX TO VEX Compression encoding: [0xc5,0xf8,0x28,0xc1]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.round.256( <4 x double> %x0, <4 x i32> %src, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.256( <4 x double> %x0, <4 x i32> %src, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ define <4 x i32> @test_int_x86_maskz_vcvtt_pd2dqs_256_z(<4 x double> %x0, i8 %ma
|
||||
; X86-NEXT: vcvttpd2dqs %ymm0, %xmm0 {%k1} {z} # encoding: [0x62,0xf5,0xfc,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.round.256( <4 x double> %x0, <4 x i32> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.256( <4 x double> %x0, <4 x i32> zeroinitializer, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -126,7 +126,7 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2dqs_256_undef(<4 x double> %x0, i8
|
||||
; X86-NEXT: vcvttpd2dqs %ymm0, %xmm0 {%k1} {z} # encoding: [0x62,0xf5,0xfc,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.round.256( <4 x double> %x0, <4 x i32> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.256( <4 x double> %x0, <4 x i32> undef, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -142,10 +142,10 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2dqs_256_default(<4 x double>* %xptr
|
||||
; X86-NEXT: vcvttpd2dqsy (%eax), %xmm0 # encoding: [0x62,0xf5,0xfc,0x28,0x6d,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x0 = load <4 x double>, <4 x double> * %xptr
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.round.256( <4 x double> %x0, <4 x i32> undef, i8 -1, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.256( <4 x double> %x0, <4 x i32> undef, i8 -1)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
declare <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.round.256(<4 x double>, <4 x i32>, i8 , i32)
|
||||
declare <4 x i32> @llvm.x86.avx10.mask.vcvttpd2dqs.256(<4 x double>, <4 x i32>, i8 )
|
||||
|
||||
define <4 x i32> @test_int_x86_mask_vcvtt_pd2udqs_256(<4 x double> %x0, <4 x i32> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_pd2udqs_256:
|
||||
@@ -163,7 +163,7 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2udqs_256(<4 x double> %x0, <4 x i32
|
||||
; X86-NEXT: vmovaps %xmm1, %xmm0 # EVEX TO VEX Compression encoding: [0xc5,0xf8,0x28,0xc1]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.round.256( <4 x double> %x0, <4 x i32> %src, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.256( <4 x double> %x0, <4 x i32> %src, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -181,7 +181,7 @@ define <4 x i32> @test_int_x86_maskz_vcvtt_pd2udqs_256_z(<4 x double> %x0, i8 %m
|
||||
; X86-NEXT: vcvttpd2udqs %ymm0, %xmm0 {%k1} {z} # encoding: [0x62,0xf5,0xfc,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.round.256( <4 x double> %x0, <4 x i32> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.256( <4 x double> %x0, <4 x i32> zeroinitializer, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -199,7 +199,7 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2udqs_256_undef(<4 x double> %x0, i8
|
||||
; X86-NEXT: vcvttpd2udqs %ymm0, %xmm0 {%k1} {z} # encoding: [0x62,0xf5,0xfc,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: vzeroupper # encoding: [0xc5,0xf8,0x77]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.round.256( <4 x double> %x0, <4 x i32> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.256( <4 x double> %x0, <4 x i32> undef, i8 %mask)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
|
||||
@@ -216,10 +216,10 @@ define <4 x i32> @test_int_x86_mask_vcvtt_pd2udqs_256_default(<4 x double>* %x0)
|
||||
; X86-NEXT: vcvttpd2udqsy (%eax), %xmm0 # encoding: [0x62,0xf5,0xfc,0x28,0x6c,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x10 = load <4 x double>, <4 x double> * %x0
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.round.256( <4 x double> %x10, <4 x i32> undef, i8 -1, i32 4)
|
||||
%res = call <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.256( <4 x double> %x10, <4 x i32> undef, i8 -1)
|
||||
ret <4 x i32> %res
|
||||
}
|
||||
declare <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.round.256(<4 x double>, <4 x i32>, i8 , i32)
|
||||
declare <4 x i32> @llvm.x86.avx10.mask.vcvttpd2udqs.256(<4 x double>, <4 x i32>, i8 )
|
||||
|
||||
define <4 x i64> @test_int_x86_mask_vcvtt_pd2qqs_256(<4 x double> %x0, <4 x i64> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_pd2qqs_256:
|
||||
@@ -235,7 +235,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2qqs_256(<4 x double> %x0, <4 x i64>
|
||||
; X86-NEXT: vcvttpd2qqs %ymm0, %ymm1 {%k1} # encoding: [0x62,0xf5,0xfd,0x29,0x6d,0xc8]
|
||||
; X86-NEXT: vmovaps %ymm1, %ymm0 # EVEX TO VEX Compression encoding: [0xc5,0xfc,0x28,0xc1]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.round.256( <4 x double> %x0, <4 x i64> %src, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.256( <4 x double> %x0, <4 x i64> %src, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -251,7 +251,7 @@ define <4 x i64> @test_int_x86_maskz_vcvtt_pd2qqs_256_z(<4 x double> %x0, i8 %ma
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttpd2qqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0xfd,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.round.256( <4 x double> %x0, <4 x i64> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.256( <4 x double> %x0, <4 x i64> zeroinitializer, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -267,7 +267,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2qqs_256_undef(<4 x double> %x0, i8
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttpd2qqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0xfd,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.round.256( <4 x double> %x0, <4 x i64> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.256( <4 x double> %x0, <4 x i64> undef, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -284,10 +284,10 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2qqs_256_default(<4 x double>* %x0)
|
||||
; X86-NEXT: vcvttpd2qqs (%eax), %ymm0 # encoding: [0x62,0xf5,0xfd,0x28,0x6d,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x10 = load <4 x double>, <4 x double>* %x0
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.round.256( <4 x double> %x10, <4 x i64> undef, i8 -1, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.256( <4 x double> %x10, <4 x i64> undef, i8 -1)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.round.256(<4 x double>, <4 x i64>, i8 , i32)
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttpd2qqs.256(<4 x double>, <4 x i64>, i8 )
|
||||
|
||||
define <4 x i64> @test_int_x86_mask_vcvtt_pd2uqqs_256(<4 x double> %x0, <4 x i64> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_pd2uqqs_256:
|
||||
@@ -303,7 +303,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2uqqs_256(<4 x double> %x0, <4 x i64
|
||||
; X86-NEXT: vcvttpd2uqqs %ymm0, %ymm1 {%k1} # encoding: [0x62,0xf5,0xfd,0x29,0x6c,0xc8]
|
||||
; X86-NEXT: vmovaps %ymm1, %ymm0 # EVEX TO VEX Compression encoding: [0xc5,0xfc,0x28,0xc1]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256( <4 x double> %x0, <4 x i64> %src, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.256( <4 x double> %x0, <4 x i64> %src, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -319,7 +319,7 @@ define <4 x i64> @test_int_x86_maskz_vcvtt_pd2uqqs_256_z(<4 x double> %x0, i8 %m
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttpd2uqqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0xfd,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256( <4 x double> %x0, <4 x i64> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.256( <4 x double> %x0, <4 x i64> zeroinitializer, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -335,7 +335,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2uqqs_256_undef(<4 x double> %x0, i8
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttpd2uqqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0xfd,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256( <4 x double> %x0, <4 x i64> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.256( <4 x double> %x0, <4 x i64> undef, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -352,10 +352,10 @@ define <4 x i64> @test_int_x86_mask_vcvtt_pd2uqqs_256_default(<4 x double>* %x0)
|
||||
; X86-NEXT: vcvttpd2uqqs (%eax), %ymm0 # encoding: [0x62,0xf5,0xfd,0x28,0x6c,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x10 = load <4 x double>, <4 x double>* %x0
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256( <4 x double> %x10, <4 x i64> undef, i8 -1, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.256( <4 x double> %x10, <4 x i64> undef, i8 -1)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.round.256(<4 x double>, <4 x i64>, i8 , i32)
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttpd2uqqs.256(<4 x double>, <4 x i64>, i8 )
|
||||
|
||||
define <8 x i32> @test_int_x86_mask_vcvtt_ps2dqs_256(<8 x float> %x0, <8 x i32> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_ps2dqs_256:
|
||||
@@ -371,7 +371,7 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2dqs_256(<8 x float> %x0, <8 x i32>
|
||||
; X86-NEXT: vcvttps2dqs %ymm0, %ymm1 {%k1} # encoding: [0x62,0xf5,0x7c,0x29,0x6d,0xc8]
|
||||
; X86-NEXT: vmovaps %ymm1, %ymm0 # EVEX TO VEX Compression encoding: [0xc5,0xfc,0x28,0xc1]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.round.256( <8 x float> %x0, <8 x i32> %src, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.256( <8 x float> %x0, <8 x i32> %src, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -387,7 +387,7 @@ define <8 x i32> @test_int_x86_maskz_vcvtt_ps2dqs_256_z(<8 x float> %x0, i8 %mas
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2dqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7c,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.round.256( <8 x float> %x0, <8 x i32> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.256( <8 x float> %x0, <8 x i32> zeroinitializer, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -403,7 +403,7 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2dqs_256_undef(<8 x float> %x0, i8 %
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2dqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7c,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.round.256( <8 x float> %x0, <8 x i32> undef, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.256( <8 x float> %x0, <8 x i32> undef, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -419,10 +419,10 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2dqs_256_default(<8 x float>* %x0) {
|
||||
; X86-NEXT: vcvttps2dqs (%eax), %ymm0 # encoding: [0x62,0xf5,0x7c,0x28,0x6d,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x10 = load <8 x float>, <8 x float>* %x0
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.round.256( <8 x float> %x10, <8 x i32> undef, i8 -1, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.256( <8 x float> %x10, <8 x i32> undef, i8 -1)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
declare <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.round.256(<8 x float>, <8 x i32>, i8 , i32)
|
||||
declare <8 x i32> @llvm.x86.avx10.mask.vcvttps2dqs.256(<8 x float>, <8 x i32>, i8 )
|
||||
|
||||
define <8 x i32> @test_int_x86_mask_vcvtt_ps2udqs_256(<8 x float> %x0, <8 x i32> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_ps2udqs_256:
|
||||
@@ -438,7 +438,7 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2udqs_256(<8 x float> %x0, <8 x i32>
|
||||
; X86-NEXT: vcvttps2udqs %ymm0, %ymm1 {%k1} # encoding: [0x62,0xf5,0x7c,0x29,0x6c,0xc8]
|
||||
; X86-NEXT: vmovaps %ymm1, %ymm0 # EVEX TO VEX Compression encoding: [0xc5,0xfc,0x28,0xc1]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.round.256( <8 x float> %x0, <8 x i32> %src, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.256( <8 x float> %x0, <8 x i32> %src, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -454,7 +454,7 @@ define <8 x i32> @test_int_x86_maskz_vcvtt_ps2udqs_256_z(<8 x float> %x0, i8 %ma
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2udqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7c,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.round.256( <8 x float> %x0, <8 x i32> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.256( <8 x float> %x0, <8 x i32> zeroinitializer, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -470,7 +470,7 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2udqs_256_undef(<8 x float> %x0, i8
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2udqs %ymm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7c,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.round.256( <8 x float> %x0, <8 x i32> undef, i8 %mask, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.256( <8 x float> %x0, <8 x i32> undef, i8 %mask)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
|
||||
@@ -487,10 +487,10 @@ define <8 x i32> @test_int_x86_mask_vcvtt_ps2udqs_256_default(<8 x float>* %x0)
|
||||
; X86-NEXT: vcvttps2udqs (%eax), %ymm0 # encoding: [0x62,0xf5,0x7c,0x28,0x6c,0x00]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%x10 = load <8 x float>, <8 x float>* %x0
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.round.256( <8 x float> %x10, <8 x i32> undef, i8 -1, i32 4)
|
||||
%res = call <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.256( <8 x float> %x10, <8 x i32> undef, i8 -1)
|
||||
ret <8 x i32> %res
|
||||
}
|
||||
declare <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.round.256(<8 x float>, <8 x i32>, i8 , i32)
|
||||
declare <8 x i32> @llvm.x86.avx10.mask.vcvttps2udqs.256(<8 x float>, <8 x i32>, i8 )
|
||||
|
||||
define <4 x i64> @test_int_x86_maskz_vcvtt_ps2qqs_256_z(<4 x float> %x0, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_maskz_vcvtt_ps2qqs_256_z:
|
||||
@@ -504,7 +504,7 @@ define <4 x i64> @test_int_x86_maskz_vcvtt_ps2qqs_256_z(<4 x float> %x0, i8 %mas
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2qqs %xmm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7d,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.round.256( <4 x float> %x0, <4 x i64> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.256( <4 x float> %x0, <4 x i64> zeroinitializer, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -520,10 +520,10 @@ define <4 x i64> @test_int_x86_mask_vcvtt_ps2qqs_256_undef(<4 x float> %x0, i8 %
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2qqs %xmm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7d,0xa9,0x6d,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.round.256( <4 x float> %x0, <4 x i64> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.256( <4 x float> %x0, <4 x i64> undef, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.round.256(<4 x float>, <4 x i64>, i8 , i32)
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttps2qqs.256(<4 x float>, <4 x i64>, i8 )
|
||||
|
||||
define <4 x i64> @test_int_x86_mask_vcvtt_ps2uqqs_256(<4 x float> %x0, <4 x i64> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_ps2uqqs_256:
|
||||
@@ -539,7 +539,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_ps2uqqs_256(<4 x float> %x0, <4 x i64>
|
||||
; X86-NEXT: vcvttps2uqqs %xmm0, %ymm1 {%k1} # encoding: [0x62,0xf5,0x7d,0x29,0x6c,0xc8]
|
||||
; X86-NEXT: vmovaps %ymm1, %ymm0 # EVEX TO VEX Compression encoding: [0xc5,0xfc,0x28,0xc1]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.round.256( <4 x float> %x0, <4 x i64> %src, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.256( <4 x float> %x0, <4 x i64> %src, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -555,7 +555,7 @@ define <4 x i64> @test_int_x86_maskz_vcvtt_ps2uqqs_256_z(<4 x float> %x0, i8 %ma
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2uqqs %xmm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7d,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.round.256( <4 x float> %x0, <4 x i64> zeroinitializer, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.256( <4 x float> %x0, <4 x i64> zeroinitializer, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -571,7 +571,7 @@ define <4 x i64> @test_int_x86_mask_vcvtt_ps2uqqs_256_undef(<4 x float> %x0, i8
|
||||
; X86-NEXT: kmovb {{[0-9]+}}(%esp), %k1 # encoding: [0xc5,0xf9,0x90,0x4c,0x24,0x04]
|
||||
; X86-NEXT: vcvttps2uqqs %xmm0, %ymm0 {%k1} {z} # encoding: [0x62,0xf5,0x7d,0xa9,0x6c,0xc0]
|
||||
; X86-NEXT: retl # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.round.256( <4 x float> %x0, <4 x i64> undef, i8 %mask, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.256( <4 x float> %x0, <4 x i64> undef, i8 %mask)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
@@ -581,11 +581,11 @@ define <4 x i64> @test_int_x86_mask_vcvtt_ps2uqqs_256_default(<4 x float> %x0) {
|
||||
; CHECK: # %bb.0:
|
||||
; CHECK-NEXT: vcvttps2uqqs %xmm0, %ymm0 # encoding: [0x62,0xf5,0x7d,0x28,0x6c,0xc0]
|
||||
; CHECK-NEXT: ret{{[l|q]}} # encoding: [0xc3]
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.round.256( <4 x float> %x0, <4 x i64> undef, i8 -1, i32 4)
|
||||
%res = call <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.256( <4 x float> %x0, <4 x i64> undef, i8 -1)
|
||||
ret <4 x i64> %res
|
||||
}
|
||||
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.round.256(<4 x float>, <4 x i64>, i8 , i32)
|
||||
declare <4 x i64> @llvm.x86.avx10.mask.vcvttps2uqqs.256(<4 x float>, <4 x i64>, i8 )
|
||||
|
||||
define <4 x i32> @test_int_x86_mask_vcvtt_pd2dqs_128(<2 x double> %x0, <4 x i32> %src, i8 %mask) {
|
||||
; X64-LABEL: test_int_x86_mask_vcvtt_pd2dqs_128:
|
||||
|
||||
@@ -17,18 +17,10 @@
|
||||
# INTEL: vcvttpd2dqs xmm2, ymm3
|
||||
0x62,0xf5,0xfc,0x28,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2dqs {sae}, %ymm3, %xmm2
|
||||
# INTEL: vcvttpd2dqs xmm2, ymm3, {sae}
|
||||
0x62,0xf5,0xf8,0x18,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2dqs %ymm3, %xmm2 {%k7}
|
||||
# INTEL: vcvttpd2dqs xmm2 {k7}, ymm3
|
||||
0x62,0xf5,0xfc,0x2f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2dqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
# INTEL: vcvttpd2dqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0xf8,0x9f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2dqs %zmm3, %ymm2
|
||||
# INTEL: vcvttpd2dqs ymm2, zmm3
|
||||
0x62,0xf5,0xfc,0x48,0x6d,0xd3
|
||||
@@ -125,18 +117,10 @@
|
||||
# INTEL: vcvttpd2qqs ymm2, ymm3
|
||||
0x62,0xf5,0xfd,0x28,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2qqs {sae}, %ymm3, %ymm2
|
||||
# INTEL: vcvttpd2qqs ymm2, ymm3, {sae}
|
||||
0x62,0xf5,0xf9,0x18,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2qqs %ymm3, %ymm2 {%k7}
|
||||
# INTEL: vcvttpd2qqs ymm2 {k7}, ymm3
|
||||
0x62,0xf5,0xfd,0x2f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2qqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
# INTEL: vcvttpd2qqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0xf9,0x9f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttpd2qqs %zmm3, %zmm2
|
||||
# INTEL: vcvttpd2qqs zmm2, zmm3
|
||||
0x62,0xf5,0xfd,0x48,0x6d,0xd3
|
||||
@@ -241,18 +225,10 @@
|
||||
# INTEL: vcvttpd2udqs xmm2, ymm3
|
||||
0x62,0xf5,0xfc,0x28,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2udqs {sae}, %ymm3, %xmm2
|
||||
# INTEL: vcvttpd2udqs xmm2, ymm3, {sae}
|
||||
0x62,0xf5,0xf8,0x18,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2udqs %ymm3, %xmm2 {%k7}
|
||||
# INTEL: vcvttpd2udqs xmm2 {k7}, ymm3
|
||||
0x62,0xf5,0xfc,0x2f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2udqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
# INTEL: vcvttpd2udqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0xf8,0x9f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2udqs %zmm3, %ymm2
|
||||
# INTEL: vcvttpd2udqs ymm2, zmm3
|
||||
0x62,0xf5,0xfc,0x48,0x6c,0xd3
|
||||
@@ -349,18 +325,10 @@
|
||||
# INTEL: vcvttpd2uqqs ymm2, ymm3
|
||||
0x62,0xf5,0xfd,0x28,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2uqqs {sae}, %ymm3, %ymm2
|
||||
# INTEL: vcvttpd2uqqs ymm2, ymm3, {sae}
|
||||
0x62,0xf5,0xf9,0x18,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2uqqs %ymm3, %ymm2 {%k7}
|
||||
# INTEL: vcvttpd2uqqs ymm2 {k7}, ymm3
|
||||
0x62,0xf5,0xfd,0x2f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2uqqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
# INTEL: vcvttpd2uqqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0xf9,0x9f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttpd2uqqs %zmm3, %zmm2
|
||||
# INTEL: vcvttpd2uqqs zmm2, zmm3
|
||||
0x62,0xf5,0xfd,0x48,0x6c,0xd3
|
||||
@@ -465,18 +433,10 @@
|
||||
# INTEL: vcvttps2dqs ymm2, ymm3
|
||||
0x62,0xf5,0x7c,0x28,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttps2dqs {sae}, %ymm3, %ymm2
|
||||
# INTEL: vcvttps2dqs ymm2, ymm3, {sae}
|
||||
0x62,0xf5,0x78,0x18,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttps2dqs %ymm3, %ymm2 {%k7}
|
||||
# INTEL: vcvttps2dqs ymm2 {k7}, ymm3
|
||||
0x62,0xf5,0x7c,0x2f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttps2dqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
# INTEL: vcvttps2dqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0x78,0x9f,0x6d,0xd3
|
||||
|
||||
# ATT: vcvttps2dqs %zmm3, %zmm2
|
||||
# INTEL: vcvttps2dqs zmm2, zmm3
|
||||
0x62,0xf5,0x7c,0x48,0x6d,0xd3
|
||||
@@ -697,18 +657,10 @@
|
||||
# INTEL: vcvttps2udqs ymm2, ymm3
|
||||
0x62,0xf5,0x7c,0x28,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttps2udqs {sae}, %ymm3, %ymm2
|
||||
# INTEL: vcvttps2udqs ymm2, ymm3, {sae}
|
||||
0x62,0xf5,0x78,0x18,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttps2udqs %ymm3, %ymm2 {%k7}
|
||||
# INTEL: vcvttps2udqs ymm2 {k7}, ymm3
|
||||
0x62,0xf5,0x7c,0x2f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttps2udqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
# INTEL: vcvttps2udqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
0x62,0xf5,0x78,0x9f,0x6c,0xd3
|
||||
|
||||
# ATT: vcvttps2udqs %zmm3, %zmm2
|
||||
# INTEL: vcvttps2udqs zmm2, zmm3
|
||||
0x62,0xf5,0x7c,0x48,0x6c,0xd3
|
||||
|
||||
@@ -17,18 +17,10 @@
|
||||
# INTEL: vcvttpd2dqs xmm22, ymm23
|
||||
0x62,0xa5,0xfc,0x28,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2dqs {sae}, %ymm23, %xmm22
|
||||
# INTEL: vcvttpd2dqs xmm22, ymm23, {sae}
|
||||
0x62,0xa5,0xf8,0x18,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2dqs %ymm23, %xmm22 {%k7}
|
||||
# INTEL: vcvttpd2dqs xmm22 {k7}, ymm23
|
||||
0x62,0xa5,0xfc,0x2f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2dqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
# INTEL: vcvttpd2dqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0xf8,0x9f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2dqs %zmm23, %ymm22
|
||||
# INTEL: vcvttpd2dqs ymm22, zmm23
|
||||
0x62,0xa5,0xfc,0x48,0x6d,0xf7
|
||||
@@ -125,18 +117,10 @@
|
||||
# INTEL: vcvttpd2qqs ymm22, ymm23
|
||||
0x62,0xa5,0xfd,0x28,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2qqs {sae}, %ymm23, %ymm22
|
||||
# INTEL: vcvttpd2qqs ymm22, ymm23, {sae}
|
||||
0x62,0xa5,0xf9,0x18,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2qqs %ymm23, %ymm22 {%k7}
|
||||
# INTEL: vcvttpd2qqs ymm22 {k7}, ymm23
|
||||
0x62,0xa5,0xfd,0x2f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2qqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
# INTEL: vcvttpd2qqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0xf9,0x9f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttpd2qqs %zmm23, %zmm22
|
||||
# INTEL: vcvttpd2qqs zmm22, zmm23
|
||||
0x62,0xa5,0xfd,0x48,0x6d,0xf7
|
||||
@@ -241,18 +225,10 @@
|
||||
# INTEL: vcvttpd2udqs xmm22, ymm23
|
||||
0x62,0xa5,0xfc,0x28,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2udqs {sae}, %ymm23, %xmm22
|
||||
# INTEL: vcvttpd2udqs xmm22, ymm23, {sae}
|
||||
0x62,0xa5,0xf8,0x18,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2udqs %ymm23, %xmm22 {%k7}
|
||||
# INTEL: vcvttpd2udqs xmm22 {k7}, ymm23
|
||||
0x62,0xa5,0xfc,0x2f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2udqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
# INTEL: vcvttpd2udqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0xf8,0x9f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2udqs %zmm23, %ymm22
|
||||
# INTEL: vcvttpd2udqs ymm22, zmm23
|
||||
0x62,0xa5,0xfc,0x48,0x6c,0xf7
|
||||
@@ -349,18 +325,10 @@
|
||||
# INTEL: vcvttpd2uqqs ymm22, ymm23
|
||||
0x62,0xa5,0xfd,0x28,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2uqqs {sae}, %ymm23, %ymm22
|
||||
# INTEL: vcvttpd2uqqs ymm22, ymm23, {sae}
|
||||
0x62,0xa5,0xf9,0x18,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2uqqs %ymm23, %ymm22 {%k7}
|
||||
# INTEL: vcvttpd2uqqs ymm22 {k7}, ymm23
|
||||
0x62,0xa5,0xfd,0x2f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2uqqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
# INTEL: vcvttpd2uqqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0xf9,0x9f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttpd2uqqs %zmm23, %zmm22
|
||||
# INTEL: vcvttpd2uqqs zmm22, zmm23
|
||||
0x62,0xa5,0xfd,0x48,0x6c,0xf7
|
||||
@@ -465,18 +433,10 @@
|
||||
# INTEL: vcvttps2dqs ymm22, ymm23
|
||||
0x62,0xa5,0x7c,0x28,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttps2dqs {sae}, %ymm23, %ymm22
|
||||
# INTEL: vcvttps2dqs ymm22, ymm23, {sae}
|
||||
0x62,0xa5,0x78,0x18,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttps2dqs %ymm23, %ymm22 {%k7}
|
||||
# INTEL: vcvttps2dqs ymm22 {k7}, ymm23
|
||||
0x62,0xa5,0x7c,0x2f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttps2dqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
# INTEL: vcvttps2dqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0x78,0x9f,0x6d,0xf7
|
||||
|
||||
# ATT: vcvttps2dqs %zmm23, %zmm22
|
||||
# INTEL: vcvttps2dqs zmm22, zmm23
|
||||
0x62,0xa5,0x7c,0x48,0x6d,0xf7
|
||||
@@ -697,18 +657,10 @@
|
||||
# INTEL: vcvttps2udqs ymm22, ymm23
|
||||
0x62,0xa5,0x7c,0x28,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttps2udqs {sae}, %ymm23, %ymm22
|
||||
# INTEL: vcvttps2udqs ymm22, ymm23, {sae}
|
||||
0x62,0xa5,0x78,0x18,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttps2udqs %ymm23, %ymm22 {%k7}
|
||||
# INTEL: vcvttps2udqs ymm22 {k7}, ymm23
|
||||
0x62,0xa5,0x7c,0x2f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttps2udqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
# INTEL: vcvttps2udqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
0x62,0xa5,0x78,0x9f,0x6c,0xf7
|
||||
|
||||
# ATT: vcvttps2udqs %zmm23, %zmm22
|
||||
# INTEL: vcvttps2udqs zmm22, zmm23
|
||||
0x62,0xa5,0x7c,0x48,0x6c,0xf7
|
||||
|
||||
@@ -144,18 +144,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x28,0x6d,0xd3]
|
||||
vcvttpd2dqs %ymm3, %xmm2
|
||||
|
||||
// CHECK: vcvttpd2dqs {sae}, %ymm3, %xmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x18,0x6d,0xd3]
|
||||
vcvttpd2dqs {sae}, %ymm3, %xmm2
|
||||
|
||||
// CHECK: vcvttpd2dqs %ymm3, %xmm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x2f,0x6d,0xd3]
|
||||
vcvttpd2dqs %ymm3, %xmm2 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2dqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x9f,0x6d,0xd3]
|
||||
vcvttpd2dqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2dqs %zmm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x48,0x6d,0xd3]
|
||||
vcvttpd2dqs %zmm3, %ymm2
|
||||
@@ -252,18 +244,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x28,0x6d,0xd3]
|
||||
vcvttpd2qqs %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttpd2qqs {sae}, %ymm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x18,0x6d,0xd3]
|
||||
vcvttpd2qqs {sae}, %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttpd2qqs %ymm3, %ymm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x2f,0x6d,0xd3]
|
||||
vcvttpd2qqs %ymm3, %ymm2 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2qqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x9f,0x6d,0xd3]
|
||||
vcvttpd2qqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2qqs %zmm3, %zmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x48,0x6d,0xd3]
|
||||
vcvttpd2qqs %zmm3, %zmm2
|
||||
@@ -368,18 +352,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x28,0x6c,0xd3]
|
||||
vcvttpd2udqs %ymm3, %xmm2
|
||||
|
||||
// CHECK: vcvttpd2udqs {sae}, %ymm3, %xmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x18,0x6c,0xd3]
|
||||
vcvttpd2udqs {sae}, %ymm3, %xmm2
|
||||
|
||||
// CHECK: vcvttpd2udqs %ymm3, %xmm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x2f,0x6c,0xd3]
|
||||
vcvttpd2udqs %ymm3, %xmm2 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2udqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x9f,0x6c,0xd3]
|
||||
vcvttpd2udqs {sae}, %ymm3, %xmm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2udqs %zmm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x48,0x6c,0xd3]
|
||||
vcvttpd2udqs %zmm3, %ymm2
|
||||
@@ -476,18 +452,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x28,0x6c,0xd3]
|
||||
vcvttpd2uqqs %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttpd2uqqs {sae}, %ymm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x18,0x6c,0xd3]
|
||||
vcvttpd2uqqs {sae}, %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttpd2uqqs %ymm3, %ymm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x2f,0x6c,0xd3]
|
||||
vcvttpd2uqqs %ymm3, %ymm2 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2uqqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x9f,0x6c,0xd3]
|
||||
vcvttpd2uqqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2uqqs %zmm3, %zmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x48,0x6c,0xd3]
|
||||
vcvttpd2uqqs %zmm3, %zmm2
|
||||
@@ -592,18 +560,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x28,0x6d,0xd3]
|
||||
vcvttps2dqs %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttps2dqs {sae}, %ymm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x18,0x6d,0xd3]
|
||||
vcvttps2dqs {sae}, %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttps2dqs %ymm3, %ymm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x2f,0x6d,0xd3]
|
||||
vcvttps2dqs %ymm3, %ymm2 {%k7}
|
||||
|
||||
// CHECK: vcvttps2dqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x9f,0x6d,0xd3]
|
||||
vcvttps2dqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttps2dqs %zmm3, %zmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x48,0x6d,0xd3]
|
||||
vcvttps2dqs %zmm3, %zmm2
|
||||
@@ -824,18 +784,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x28,0x6c,0xd3]
|
||||
vcvttps2udqs %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttps2udqs {sae}, %ymm3, %ymm2
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x18,0x6c,0xd3]
|
||||
vcvttps2udqs {sae}, %ymm3, %ymm2
|
||||
|
||||
// CHECK: vcvttps2udqs %ymm3, %ymm2 {%k7}
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x2f,0x6c,0xd3]
|
||||
vcvttps2udqs %ymm3, %ymm2 {%k7}
|
||||
|
||||
// CHECK: vcvttps2udqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x9f,0x6c,0xd3]
|
||||
vcvttps2udqs {sae}, %ymm3, %ymm2 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttps2udqs %zmm3, %zmm2
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x48,0x6c,0xd3]
|
||||
vcvttps2udqs %zmm3, %zmm2
|
||||
|
||||
@@ -144,18 +144,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x28,0x6d,0xd3]
|
||||
vcvttpd2dqs xmm2, ymm3
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x18,0x6d,0xd3]
|
||||
vcvttpd2dqs xmm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x2f,0x6d,0xd3]
|
||||
vcvttpd2dqs xmm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x9f,0x6d,0xd3]
|
||||
vcvttpd2dqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2dqs ymm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x48,0x6d,0xd3]
|
||||
vcvttpd2dqs ymm2, zmm3
|
||||
@@ -252,18 +244,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x28,0x6d,0xd3]
|
||||
vcvttpd2qqs ymm2, ymm3
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x18,0x6d,0xd3]
|
||||
vcvttpd2qqs ymm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x2f,0x6d,0xd3]
|
||||
vcvttpd2qqs ymm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x9f,0x6d,0xd3]
|
||||
vcvttpd2qqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2qqs zmm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x48,0x6d,0xd3]
|
||||
vcvttpd2qqs zmm2, zmm3
|
||||
@@ -368,18 +352,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x28,0x6c,0xd3]
|
||||
vcvttpd2udqs xmm2, ymm3
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x18,0x6c,0xd3]
|
||||
vcvttpd2udqs xmm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x2f,0x6c,0xd3]
|
||||
vcvttpd2udqs xmm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf8,0x9f,0x6c,0xd3]
|
||||
vcvttpd2udqs xmm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2udqs ymm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfc,0x48,0x6c,0xd3]
|
||||
vcvttpd2udqs ymm2, zmm3
|
||||
@@ -476,18 +452,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x28,0x6c,0xd3]
|
||||
vcvttpd2uqqs ymm2, ymm3
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x18,0x6c,0xd3]
|
||||
vcvttpd2uqqs ymm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x2f,0x6c,0xd3]
|
||||
vcvttpd2uqqs ymm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0xf9,0x9f,0x6c,0xd3]
|
||||
vcvttpd2uqqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttpd2uqqs zmm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0xfd,0x48,0x6c,0xd3]
|
||||
vcvttpd2uqqs zmm2, zmm3
|
||||
@@ -592,18 +560,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x28,0x6d,0xd3]
|
||||
vcvttps2dqs ymm2, ymm3
|
||||
|
||||
// CHECK: vcvttps2dqs ymm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x18,0x6d,0xd3]
|
||||
vcvttps2dqs ymm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2dqs ymm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x2f,0x6d,0xd3]
|
||||
vcvttps2dqs ymm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttps2dqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x9f,0x6d,0xd3]
|
||||
vcvttps2dqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2dqs zmm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x48,0x6d,0xd3]
|
||||
vcvttps2dqs zmm2, zmm3
|
||||
@@ -708,18 +668,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x28,0x6d,0xd3]
|
||||
vcvttps2qqs ymm2, xmm3
|
||||
|
||||
// CHECK: vcvttps2qqs ymm2, xmm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x79,0x18,0x6d,0xd3]
|
||||
vcvttps2qqs ymm2, xmm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2qqs ymm2 {k7}, xmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x2f,0x6d,0xd3]
|
||||
vcvttps2qqs ymm2 {k7}, xmm3
|
||||
|
||||
// CHECK: vcvttps2qqs ymm2 {k7} {z}, xmm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x79,0x9f,0x6d,0xd3]
|
||||
vcvttps2qqs ymm2 {k7} {z}, xmm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2qqs zmm2, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x48,0x6d,0xd3]
|
||||
vcvttps2qqs zmm2, ymm3
|
||||
@@ -824,18 +776,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x28,0x6c,0xd3]
|
||||
vcvttps2udqs ymm2, ymm3
|
||||
|
||||
// CHECK: vcvttps2udqs ymm2, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x18,0x6c,0xd3]
|
||||
vcvttps2udqs ymm2, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2udqs ymm2 {k7}, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x2f,0x6c,0xd3]
|
||||
vcvttps2udqs ymm2 {k7}, ymm3
|
||||
|
||||
// CHECK: vcvttps2udqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x78,0x9f,0x6c,0xd3]
|
||||
vcvttps2udqs ymm2 {k7} {z}, ymm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2udqs zmm2, zmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7c,0x48,0x6c,0xd3]
|
||||
vcvttps2udqs zmm2, zmm3
|
||||
@@ -940,18 +884,10 @@
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x28,0x6c,0xd3]
|
||||
vcvttps2uqqs ymm2, xmm3
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm2, xmm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x79,0x18,0x6c,0xd3]
|
||||
vcvttps2uqqs ymm2, xmm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm2 {k7}, xmm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x2f,0x6c,0xd3]
|
||||
vcvttps2uqqs ymm2 {k7}, xmm3
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm2 {k7} {z}, xmm3, {sae}
|
||||
// CHECK: encoding: [0x62,0xf5,0x79,0x9f,0x6c,0xd3]
|
||||
vcvttps2uqqs ymm2 {k7} {z}, xmm3, {sae}
|
||||
|
||||
// CHECK: vcvttps2uqqs zmm2, ymm3
|
||||
// CHECK: encoding: [0x62,0xf5,0x7d,0x48,0x6c,0xd3]
|
||||
vcvttps2uqqs zmm2, ymm3
|
||||
|
||||
@@ -272,18 +272,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x28,0x6d,0xf7]
|
||||
vcvttpd2dqs %ymm23, %xmm22
|
||||
|
||||
// CHECK: vcvttpd2dqs {sae}, %ymm23, %xmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x18,0x6d,0xf7]
|
||||
vcvttpd2dqs {sae}, %ymm23, %xmm22
|
||||
|
||||
// CHECK: vcvttpd2dqs %ymm23, %xmm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x2f,0x6d,0xf7]
|
||||
vcvttpd2dqs %ymm23, %xmm22 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2dqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x9f,0x6d,0xf7]
|
||||
vcvttpd2dqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2dqs %zmm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x48,0x6d,0xf7]
|
||||
vcvttpd2dqs %zmm23, %ymm22
|
||||
@@ -380,18 +372,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x28,0x6d,0xf7]
|
||||
vcvttpd2qqs %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttpd2qqs {sae}, %ymm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x18,0x6d,0xf7]
|
||||
vcvttpd2qqs {sae}, %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttpd2qqs %ymm23, %ymm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x2f,0x6d,0xf7]
|
||||
vcvttpd2qqs %ymm23, %ymm22 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2qqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x9f,0x6d,0xf7]
|
||||
vcvttpd2qqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2qqs %zmm23, %zmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x48,0x6d,0xf7]
|
||||
vcvttpd2qqs %zmm23, %zmm22
|
||||
@@ -496,18 +480,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x28,0x6c,0xf7]
|
||||
vcvttpd2udqs %ymm23, %xmm22
|
||||
|
||||
// CHECK: vcvttpd2udqs {sae}, %ymm23, %xmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x18,0x6c,0xf7]
|
||||
vcvttpd2udqs {sae}, %ymm23, %xmm22
|
||||
|
||||
// CHECK: vcvttpd2udqs %ymm23, %xmm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x2f,0x6c,0xf7]
|
||||
vcvttpd2udqs %ymm23, %xmm22 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2udqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x9f,0x6c,0xf7]
|
||||
vcvttpd2udqs {sae}, %ymm23, %xmm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2udqs %zmm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x48,0x6c,0xf7]
|
||||
vcvttpd2udqs %zmm23, %ymm22
|
||||
@@ -604,18 +580,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x28,0x6c,0xf7]
|
||||
vcvttpd2uqqs %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttpd2uqqs {sae}, %ymm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x18,0x6c,0xf7]
|
||||
vcvttpd2uqqs {sae}, %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttpd2uqqs %ymm23, %ymm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x2f,0x6c,0xf7]
|
||||
vcvttpd2uqqs %ymm23, %ymm22 {%k7}
|
||||
|
||||
// CHECK: vcvttpd2uqqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x9f,0x6c,0xf7]
|
||||
vcvttpd2uqqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttpd2uqqs %zmm23, %zmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x48,0x6c,0xf7]
|
||||
vcvttpd2uqqs %zmm23, %zmm22
|
||||
@@ -720,18 +688,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x28,0x6d,0xf7]
|
||||
vcvttps2dqs %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttps2dqs {sae}, %ymm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x18,0x6d,0xf7]
|
||||
vcvttps2dqs {sae}, %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttps2dqs %ymm23, %ymm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x2f,0x6d,0xf7]
|
||||
vcvttps2dqs %ymm23, %ymm22 {%k7}
|
||||
|
||||
// CHECK: vcvttps2dqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x9f,0x6d,0xf7]
|
||||
vcvttps2dqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttps2dqs %zmm23, %zmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x48,0x6d,0xf7]
|
||||
vcvttps2dqs %zmm23, %zmm22
|
||||
@@ -952,18 +912,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x28,0x6c,0xf7]
|
||||
vcvttps2udqs %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttps2udqs {sae}, %ymm23, %ymm22
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x18,0x6c,0xf7]
|
||||
vcvttps2udqs {sae}, %ymm23, %ymm22
|
||||
|
||||
// CHECK: vcvttps2udqs %ymm23, %ymm22 {%k7}
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x2f,0x6c,0xf7]
|
||||
vcvttps2udqs %ymm23, %ymm22 {%k7}
|
||||
|
||||
// CHECK: vcvttps2udqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x9f,0x6c,0xf7]
|
||||
vcvttps2udqs {sae}, %ymm23, %ymm22 {%k7} {z}
|
||||
|
||||
// CHECK: vcvttps2udqs %zmm23, %zmm22
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x48,0x6c,0xf7]
|
||||
vcvttps2udqs %zmm23, %zmm22
|
||||
|
||||
@@ -272,18 +272,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x28,0x6d,0xf7]
|
||||
vcvttpd2dqs xmm22, ymm23
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x18,0x6d,0xf7]
|
||||
vcvttpd2dqs xmm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x2f,0x6d,0xf7]
|
||||
vcvttpd2dqs xmm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttpd2dqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x9f,0x6d,0xf7]
|
||||
vcvttpd2dqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2dqs ymm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x48,0x6d,0xf7]
|
||||
vcvttpd2dqs ymm22, zmm23
|
||||
@@ -380,18 +372,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x28,0x6d,0xf7]
|
||||
vcvttpd2qqs ymm22, ymm23
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x18,0x6d,0xf7]
|
||||
vcvttpd2qqs ymm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x2f,0x6d,0xf7]
|
||||
vcvttpd2qqs ymm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttpd2qqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x9f,0x6d,0xf7]
|
||||
vcvttpd2qqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2qqs zmm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x48,0x6d,0xf7]
|
||||
vcvttpd2qqs zmm22, zmm23
|
||||
@@ -496,18 +480,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x28,0x6c,0xf7]
|
||||
vcvttpd2udqs xmm22, ymm23
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x18,0x6c,0xf7]
|
||||
vcvttpd2udqs xmm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x2f,0x6c,0xf7]
|
||||
vcvttpd2udqs xmm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttpd2udqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf8,0x9f,0x6c,0xf7]
|
||||
vcvttpd2udqs xmm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2udqs ymm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfc,0x48,0x6c,0xf7]
|
||||
vcvttpd2udqs ymm22, zmm23
|
||||
@@ -604,18 +580,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x28,0x6c,0xf7]
|
||||
vcvttpd2uqqs ymm22, ymm23
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x18,0x6c,0xf7]
|
||||
vcvttpd2uqqs ymm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x2f,0x6c,0xf7]
|
||||
vcvttpd2uqqs ymm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttpd2uqqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0xf9,0x9f,0x6c,0xf7]
|
||||
vcvttpd2uqqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttpd2uqqs zmm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0xfd,0x48,0x6c,0xf7]
|
||||
vcvttpd2uqqs zmm22, zmm23
|
||||
@@ -720,18 +688,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x28,0x6d,0xf7]
|
||||
vcvttps2dqs ymm22, ymm23
|
||||
|
||||
// CHECK: vcvttps2dqs ymm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x18,0x6d,0xf7]
|
||||
vcvttps2dqs ymm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2dqs ymm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x2f,0x6d,0xf7]
|
||||
vcvttps2dqs ymm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttps2dqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x9f,0x6d,0xf7]
|
||||
vcvttps2dqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2dqs zmm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x48,0x6d,0xf7]
|
||||
vcvttps2dqs zmm22, zmm23
|
||||
@@ -836,18 +796,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x28,0x6d,0xf7]
|
||||
vcvttps2qqs ymm22, xmm23
|
||||
|
||||
// CHECK: vcvttps2qqs ymm22, xmm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x79,0x18,0x6d,0xf7]
|
||||
vcvttps2qqs ymm22, xmm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2qqs ymm22 {k7}, xmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x2f,0x6d,0xf7]
|
||||
vcvttps2qqs ymm22 {k7}, xmm23
|
||||
|
||||
// CHECK: vcvttps2qqs ymm22 {k7} {z}, xmm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x79,0x9f,0x6d,0xf7]
|
||||
vcvttps2qqs ymm22 {k7} {z}, xmm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2qqs zmm22, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x48,0x6d,0xf7]
|
||||
vcvttps2qqs zmm22, ymm23
|
||||
@@ -952,18 +904,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x28,0x6c,0xf7]
|
||||
vcvttps2udqs ymm22, ymm23
|
||||
|
||||
// CHECK: vcvttps2udqs ymm22, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x18,0x6c,0xf7]
|
||||
vcvttps2udqs ymm22, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2udqs ymm22 {k7}, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x2f,0x6c,0xf7]
|
||||
vcvttps2udqs ymm22 {k7}, ymm23
|
||||
|
||||
// CHECK: vcvttps2udqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x78,0x9f,0x6c,0xf7]
|
||||
vcvttps2udqs ymm22 {k7} {z}, ymm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2udqs zmm22, zmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7c,0x48,0x6c,0xf7]
|
||||
vcvttps2udqs zmm22, zmm23
|
||||
@@ -1068,18 +1012,10 @@
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x28,0x6c,0xf7]
|
||||
vcvttps2uqqs ymm22, xmm23
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm22, xmm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x79,0x18,0x6c,0xf7]
|
||||
vcvttps2uqqs ymm22, xmm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm22 {k7}, xmm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x2f,0x6c,0xf7]
|
||||
vcvttps2uqqs ymm22 {k7}, xmm23
|
||||
|
||||
// CHECK: vcvttps2uqqs ymm22 {k7} {z}, xmm23, {sae}
|
||||
// CHECK: encoding: [0x62,0xa5,0x79,0x9f,0x6c,0xf7]
|
||||
vcvttps2uqqs ymm22 {k7} {z}, xmm23, {sae}
|
||||
|
||||
// CHECK: vcvttps2uqqs zmm22, ymm23
|
||||
// CHECK: encoding: [0x62,0xa5,0x7d,0x48,0x6c,0xf7]
|
||||
vcvttps2uqqs zmm22, ymm23
|
||||
|
||||
Reference in New Issue
Block a user