Skip to content

[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow AVX512 VPMULTISHIFTQB intrinsics to be used in constexpr #167477

@RKSimon

Description

@RKSimon

Similar to #161337 - this will require thorough testing to ensure it matches what actual AVX512 hardware does.

__m128i _mm_mask_multishift_epi64_epi8 (__m128i src, __mmask16 k, __m128i a, __m128i b)
__m128i _mm_maskz_multishift_epi64_epi8 (__mmask16 k, __m128i a, __m128i b)
__m128i _mm_multishift_epi64_epi8 (__m128i a, __m128i b)

__m256i _mm256_mask_multishift_epi64_epi8 (__m256i src, __mmask32 k, __m256i a, __m256i b)
__m256i _mm256_maskz_multishift_epi64_epi8 (__mmask32 k, __m256i a, __m256i b)
__m256i _mm256_multishift_epi64_epi8 (__m256i a, __m256i b)

__m512i _mm512_mask_multishift_epi64_epi8 (__m512i src, __mmask64 k, __m512i a, __m512i b)
__m512i _mm512_maskz_multishift_epi64_epi8 (__mmask64 k, __m512i a, __m512i b)
__m512i _mm512_multishift_epi64_epi8 (__m512i a, __m512i b)

Metadata

Metadata

Assignees

Labels

backend:X86clang:bytecodeIssues for the clang bytecode constexpr interpreterclang:frontendLanguage frontend issues, e.g. anything involving "Sema"clang:headersHeaders provided by Clang, e.g. for intrinsicsconstexprAnything related to constant evaluationgood first issuehttps://github.com/llvm/llvm-project/contribute

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions