<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/152499>152499</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Headers][X86] Allow AVX2/AVX512 broadcast intrinsics to be used in constexpr
</td>
</tr>
<tr>
<th>Labels</th>
<td>
good first issue,
backend:X86,
clang:headers,
constexpr
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
RKSimon
</td>
</tr>
</table>
<pre>
These all wrap generic shuffles:
```
_mm_broadcastb_epi8
_mm_broadcastw_epi16
_mm_broadcastd_epi32
_mm_broadcastq_epi64
_mm_broadcastss_ps
_mm_broadcastsd_pd
_mm256_broadcastb_epi8
_mm256_broadcastw_epi16
_mm256_broadcastd_epi32
_mm256_broadcastq_epi64
_mm256_broadcastss_ps
_mm256_broadcastsd_pd
_mm256_broadcastsi128_si256
_mm512_broadcastb_epi8
_mm512_broadcastw_epi16
_mm512_broadcastd_epi32
_mm512_broadcastq_epi64
_mm512_broadcastss_ps
_mm512_broadcastsd_pd
_mm512_broadcast_f32x2 _mm256_broadcast_f32x2
_mm512_broadcast_i32x2 _mm256_broadcast_i32x2 _mm_broadcast_i32x2
_mm512_broadcast_f32x4 _mm256_broadcast_f32x4
_mm512_broadcast_i32x4 _mm256_broadcast_i32x4
_mm512_broadcast_f32x8
_mm512_broadcast_i32x8
_mm512_broadcast_f64x2 _mm256_broadcast_f64x2
_mm512_broadcast_i64x2 _mm256_broadcast_i64x2
_mm512_broadcast_f64x4
_mm512_broadcast_i64x4
```
(ignore the AVX512 mask/maskz variants for now)
You can use https://github.com/llvm/llvm-project/pull/152305 as reference.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUlM-OnDgQh5_GXKxtQYH5c-DQsy200t52o2hyQgYKcMZgYpvpSZ4-Mt3pGXfoQyRLSN-vKH92CbgxYpgRS8KeCDsFfLWj0uV___4vJjUHjeq-l59GNEi5lPSs-UIHnFGLlppx7XuJhsRHEm4rDa8rPNbTVDda8a7lxjY1LiK_p2dHo_Qedw7HcI-_OZwm99iYejG_wa5euotTPU3A0n0VL_BsvMQT8hLPyUs-aPn8sZkREeS1EcDSWwGLYF_dCzx1L_HUvcRT95IP6j731L2o7mN4A3p_ogveqxf79Td8zx7tmezvuXesrdFOvXhU7xrt3fb2xm7Qp8nuLTi822i_Xjyqd432j3YNPn6AbkEuhllppHZEevz8zCKgEzcvBCr3-EFfuRZ8tob2StNZnQkUl1e_qJW2fKarQTpau2wfOVQEqkHYcW0OrZoIVFK-_nr8tWj1FVtLoFpWKQlUEYM4ZJQbqrFHjXOLh6Ar466ICx5gGWUsYVmSZEUwlkkGBcv7hsdZw3NIogz7vksbwLyNWcoCUUIILMzDLIqTjGWHuIjTpMeoZxHnjPckCXHiQh6czUHpIRDGrFhGDJKiCCRvUJrtNwcwKNXRXmhj6VZEAAj8TQAa3r7g3JH4-JynN9pKPg8kPo7IO9TmnavZWHxbtCPsFOhyu4lmHQxJQimMNe82Vli5_Wb_uXZhJ8Ke3DbsRI9SqrMbERCorpO6zZeK2WoxG9EaahVt0I2lo2KmN4Fg1bL840FtZzeXUbk7ei3hZwAAAP__9fkAVg">