Skip to content

[X86][Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow PD2PS fp truncation intrinsics to be used in constexpr #169370

@RKSimon

Description

@RKSimon

Similar to #160312 except initially we should only allow EXACT and FINITE conversions - any special case (DENORMAL/INF/NAN/etc.) or loss of precision shouldn't be allowed in constexpr for now.

__m128 _mm_cvtsd_ss (__m128 a, __m128d b)
__m128 _mm_mask_cvtsd_ss (__m128 src, __mmask8 k, __m128 a, __m128d b)
__m128 _mm_maskz_cvtsd_ss (__mmask8 k, __m128 a, __m128d b)

__m128 _mm_cvtpd_ps (__m128d a)
__m128 _mm_mask_cvtpd_ps (__m128 src, __mmask8 k, __m128d a)
__m128 _mm_maskz_cvtpd_ps (__mmask8 k, __m128d a)
__m128 _mm256_cvtpd_ps (__m256d a)
__m128 _mm256_mask_cvtpd_ps (__m128 src, __mmask8 k, __m256d a)
__m128 _mm256_maskz_cvtpd_ps (__mmask8 k, __m256d a)
__m256 _mm512_cvtpd_ps (__m512d a)
__m256 _mm512_mask_cvtpd_ps (__m256 src, __mmask8 k, __m512d a)
__m256 _mm512_maskz_cvtpd_ps (__mmask8 k, __m512d a)
__m512 _mm512_cvtpd_pslo (__m512d v2)
__m512 _mm512_mask_cvtpd_pslo (__m512 src, __mmask8 k, __m512d v2)

Metadata

Metadata

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