-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Labels
backend:X86clang:bytecodeIssues for the clang bytecode constexpr interpreterIssues for the clang bytecode constexpr interpreterclang:headersHeaders provided by Clang, e.g. for intrinsicsHeaders provided by Clang, e.g. for intrinsicsconstexprAnything related to constant evaluationAnything related to constant evaluationgood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contribute
Description
__m128i _mm_alignr_epi32 (__m128i a, __m128i b, const int imm8)
__m128i _mm_mask_alignr_epi32 (__m128i src, __mmask8 k, __m128i a, __m128i b, const int imm8)
__m128i _mm_maskz_alignr_epi32 (__mmask8 k, __m128i a, __m128i b, const int imm8)
__m256i _mm256_alignr_epi32 (__m256i a, __m256i b, const int imm8)
__m256i _mm256_mask_alignr_epi32 (__m256i src, __mmask8 k, __m256i a, __m256i b, const int imm8)
__m256i _mm256_maskz_alignr_epi32 (__mmask8 k, __m256i a, __m256i b, const int imm8)
__m512i _mm512_alignr_epi32 (__m512i a, __m512i b, const int imm8)
__m512i _mm512_mask_alignr_epi32 (__m512i src, __mmask16 k, __m512i a, __m512i b, const int imm8)
__m512i _mm512_maskz_alignr_epi32 (__mmask16 k, __m512i a, __m512i b, const int imm8)
__m128i _mm_alignr_epi64 (__m128i a, __m128i b, const int imm8)
__m128i _mm_mask_alignr_epi64 (__m128i src, __mmask8 k, __m128i a, __m128i b, const int imm8)
__m128i _mm_maskz_alignr_epi64 (__mmask8 k, __m128i a, __m128i b, const int imm8)
__m256i _mm256_alignr_epi64 (__m256i a, __m256i b, const int imm8)
__m256i _mm256_mask_alignr_epi64 (__m256i src, __mmask8 k, __m256i a, __m256i b, const int imm8)
__m256i _mm256_maskz_alignr_epi64 (__mmask8 k, __m256i a, __m256i b, const int imm8)
__m512i _mm512_alignr_epi64 (__m512i a, __m512i b, const int imm8)
__m512i _mm512_mask_alignr_epi64 (__m512i src, __mmask8 k, __m512i a, __m512i b, const int imm8)
__m512i _mm512_maskz_alignr_epi64 (__mmask8 k, __m512i a, __m512i b, const int imm8)
Unlike many shuffles (inc PALIGNR) - these are act across the full vector width - review CodeGenFunction::EmitX86BuiltinExpr to see how they can be implemented - should still be able to use a interp__builtin_ia32_shuffle_generic/evalShuffleGeneric callback however
Metadata
Metadata
Assignees
Labels
backend:X86clang:bytecodeIssues for the clang bytecode constexpr interpreterIssues for the clang bytecode constexpr interpreterclang:headersHeaders provided by Clang, e.g. for intrinsicsHeaders provided by Clang, e.g. for intrinsicsconstexprAnything related to constant evaluationAnything related to constant evaluationgood first issuehttps://github.com/llvm/llvm-project/contributehttps://github.com/llvm/llvm-project/contribute