-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Open
Labels
backend:X86clang:headersHeaders provided by Clang, e.g. for intrinsicsHeaders provided by Clang, e.g. for intrinsicsgood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contribute
Description
These appear to be missed in earlier patches like #152313 as we didn't have mask/maskz constexpr support back then, most just need a header tweak and test coverage:
_mm_mask_set1_epi32 _mm_maskz_set1_epi32
_mm_mask_set1_epi64 _mm_maskz_set1_epi64
_mm256_mask_set1_epi32 _mm256_maskz_set1_epi32
_mm256_mask_set1_epi64 _mm256_maskz_set1_epi64
_mm512_mask_set1_epi32 _mm512_maskz_set1_epi32
_mm512_mask_set1_epi64 _mm512_maskz_set1_epi64
_mm_mask_broadcast_i32x2 _mm_mask_broadcast_i32x2
_mm256_mask_broadcast_f32x2 _mm256_maskz_broadcast_f32x2
_mm256_mask_broadcast_f64x2 _mm256_maskx_broadcast_f64x2
_mm256_mask_broadcast_i32x2 _mm256_maskz_broadcast_i32x2
_mm256_mask_broadcast_i64x2 _mm256_maskz_broadcast_i64x2
_mm512_mask_broadcast_f32x2 _mm512_maskz_broadcast_f32x2
_mm512_mask_broadcast_f32x8 _mm512_maskz_broadcast_f32x8
_mm512_mask_broadcast_f64x2 _mm512_maskz_broadcast_f64x2
_mm512_mask_broadcast_i32x2 _mm512_maskz_broadcast_i32x2
_mm512_mask_broadcast_i32x8 _mm512_maskz_broadcast_i32x8
_mm512_mask_broadcast_i64x2 _mm512_maskz_broadcast_i64x2
_mm256_mask_broadcast_i32x4 _mm256_maskz_broadcast_i32x4
_mm256_mask_broadcast_f32x4 _mm256_maskz_broadcast_f32x4
_mm_mask_broadcastss_ps _mm_maskz_broadcastss_ps
_mm256_mask_broadcastsd_pd _mm256_maskz_broadcastsd_pd
_mm256_mask_broadcastss_ps _mm256_maskz_broadcastss_ps
_mm_mask_broadcastd_epi32 _mm_maskz_broadcastd_epi32
_mm_mask_broadcastq_epi64 _mm_maskz_broadcastq_epi64
_mm256_mask_broadcastd_epi32 _mm256_maskz_broadcastd_epi32
_mm256_mask_broadcastq_epi64 _mm256_maskz_broadcastq_epi64
_mm512_mask_broadcastd_epi32 / _mm512_maskz_broadcastd_epi32
_mm512_mask_broadcastq_epi64 / _mm512_maskz_broadcastq_epi64
_mm_mask_movehdup_ps / _mm_maskz_movehdup_ps
_mm_mask_moveldup_ps / _mm_maskz_moveldup_ps
_mm_mask_unpackhi_pd / _mm_maskz_unpackhi_pd
_mm_mask_unpacklo_pd / _mm_maskz_unpacklo_pd
_mm_mask_unpackhi_ps / _mm_maskz_unpackhi_ps
_mm_mask_unpacklo_ps / _mm_maskz_unpacklo_ps
_mm_mask_unpackhi_epi64 / _mm_maskz_unpackhi_epi64
_mm_mask_unpacklo_epi64 / _mm_maskz_unpacklo_epi64
_mm_mask_unpackhi_epi32 / _mm_maskz_unpackhi_epi32
_mm_mask_unpacklo_epi32 / _mm_maskz_unpacklo_epi32
_mm256_mask_movehdup_ps / _mm256_maskz_movehdup_ps
_mm256_mask_moveldup_ps / _mm256_maskz_moveldup_ps
_mm256_mask_unpackhi_pd / _mm256_maskz_unpackhi_pd
_mm256_mask_unpacklo_pd / _mm256_maskz_unpacklo_pd
_mm256_mask_unpackhi_ps / _mm256_maskz_unpackhi_ps
_mm256_mask_unpacklo_ps / _mm256_maskz_unpacklo_ps
_mm256_mask_unpackhi_epi64 / _mm256_maskz_unpackhi_epi64
_mm256_mask_unpacklo_epi64 / _mm256_maskz_unpacklo_epi64
_mm256_mask_unpackhi_epi32 / _mm256_maskz_unpackhi_epi32
_mm256_mask_unpacklo_epi32 / _mm256_maskz_unpacklo_epi32
_mm512_mask_movehdup_ps / _mm512_maskz_movehdup_ps
_mm512_mask_moveldup_ps / _mm512_maskz_moveldup_ps
_mm512_mask_unpackhi_pd / _mm512_maskz_unpackhi_pd
_mm512_mask_unpacklo_pd / _mm512_maskz_unpacklo_pd
_mm512_mask_unpackhi_ps / _mm512_maskz_unpackhi_ps
_mm512_mask_unpacklo_ps / _mm512_maskz_unpacklo_ps
_mm512_mask_unpackhi_epi64 / _mm512_maskz_unpackhi_epi64
_mm512_mask_unpacklo_epi64 / _mm512_maskz_unpacklo_epi64
_mm512_mask_unpackhi_epi32 / _mm512_maskz_unpackhi_epi32
_mm512_mask_unpacklo_epi32 / _mm512_maskz_unpacklo_epi32
_mm_mask_move_ss / _mm_maskz_move_ss
_mm_mask_move_sd / _mm_maskz_move_sd
(I may have missed some shuffle cases from avx512fintrin.h / avx512vlintrin.h)
Metadata
Metadata
Assignees
Labels
backend:X86clang:headersHeaders provided by Clang, e.g. for intrinsicsHeaders provided by Clang, e.g. for intrinsicsgood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contribute