llvm/llvm-project

[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow SSE/AVX/AVX512 square root intrinsics to be used in constexpr

Open

#160,516 opened on Sep 24, 2025

View on GitHub
 (13 comments) (0 reactions) (1 assignee)C++ (10,782 forks)batch import
backend:X86clang:bytecodeclang:headersconstexprgood first issue

Repository metrics

Stars
 (26,378 stars)
PR merge metrics
 (Avg merge 1d 2h) (1,000 merged PRs in 30d)

Description

_mm_sqrt_pd / _mm_mask_sqrt_pd / _mm_maskz_sqrt_pd
_mm_sqrt_ps / _mm_mask_sqrt_ps / _mm_maskz_sqrt_ps
_mm256_sqrt_pd /_mm256_mask_sqrt_pd / _mm256_maskz_sqrt_pd
_mm256_sqrt_ps /_mm256_mask_sqrt_ps / _mm256_maskz_sqrt_ps
_mm512_sqrt_pd / _mm512_mask_sqrt_pd / _mm512_maskz_sqrt_pd
_mm512_sqrt_ps / _mm512_mask_sqrt_ps / _mm512_maskz_sqrt_ps

These should probably be limited to non-constrained fp cases

NOTE: We are NOT intending to handle the related rcp and rsqrt estimate intrinsics

Contributor guide