<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/clang/lib/CodeGen/TargetBuiltins/X86.cpp, branch users/mingmingl-llvm/samplefdo-profile-format</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[Headers][X86] Use `__builtin_elementwise_ctlz` instead of avx512cd intrinsics. (#155089)</title>
<updated>2025-08-28T17:07:47+00:00</updated>
<author>
<name>moorabbit</name>
<email>moorabbit@proton.me</email>
</author>
<published>2025-08-28T17:07:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=73cf62b25497b594312146a11cd9790e6c6e1384'/>
<id>73cf62b25497b594312146a11cd9790e6c6e1384</id>
<content type='text'>
The following avx512 intrinsics were removed:
- `__builtin_ia32_vplzcntd_128`
- `__builtin_ia32_vplzcntd_256`
- `__builtin_ia32_vplzcntd_512`
- `__builtin_ia32_vplzcntq_128`
- `__builtin_ia32_vplzcntq_256`
- `__builtin_ia32_vplzcntq_512`

Users of the removed intrinsics (e.g. `_mm512_lzcnt_epi64`,
`_mm_lzcnt_epi32`) are now relying on `__builtin_elementwise_ctlz` and
are marked as `constexpr`.

Fixes: #154279</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following avx512 intrinsics were removed:
- `__builtin_ia32_vplzcntd_128`
- `__builtin_ia32_vplzcntd_256`
- `__builtin_ia32_vplzcntd_512`
- `__builtin_ia32_vplzcntq_128`
- `__builtin_ia32_vplzcntq_256`
- `__builtin_ia32_vplzcntq_512`

Users of the removed intrinsics (e.g. `_mm512_lzcnt_epi64`,
`_mm_lzcnt_epi32`) are now relying on `__builtin_elementwise_ctlz` and
are marked as `constexpr`.

Fixes: #154279</pre>
</div>
</content>
</entry>
<entry>
<title>[clang][X86] Replace vprot/vprol/vpror/vshld/vshrd intrinsics with __builtin_elementwise_fshl/fshr (#153229)</title>
<updated>2025-08-13T09:28:30+00:00</updated>
<author>
<name>Simon Pilgrim</name>
<email>llvm-dev@redking.me.uk</email>
</author>
<published>2025-08-13T09:28:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=91fff707407ea4d3455d4675bc1310a7bc0b5d58'/>
<id>91fff707407ea4d3455d4675bc1310a7bc0b5d58</id>
<content type='text'>
Replaces the XOP/AVX512 per-element rotation/funnel shift builtins with the generic __builtin_elementwise_fshl/fshr

We still have uniform immediate variants to handle next.

Part of #153152</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replaces the XOP/AVX512 per-element rotation/funnel shift builtins with the generic __builtin_elementwise_fshl/fshr

We still have uniform immediate variants to handle next.

Part of #153152</pre>
</div>
</content>
</entry>
<entry>
<title>[Clang][X86] Replace F16C `vcvtph2ps/256` intrinsics with `(convert|shuffle)vector` builtins (#152911)</title>
<updated>2025-08-12T15:32:19+00:00</updated>
<author>
<name>moorabbit</name>
<email>moorabbit@proton.me</email>
</author>
<published>2025-08-12T15:32:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f8653cecd11ede482a175a5c4d6fa147812562dd'/>
<id>f8653cecd11ede482a175a5c4d6fa147812562dd</id>
<content type='text'>
The following intrinsics were replaced by a combination of
`__builtin_shufflevector` and `__builtin_convertvector`:
- `__builtin_ia32_vcvtph2ps`
- `__builtin_ia32_vcvtph2ps256`

Fixes #152749</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following intrinsics were replaced by a combination of
`__builtin_shufflevector` and `__builtin_convertvector`:
- `__builtin_ia32_vcvtph2ps`
- `__builtin_ia32_vcvtph2ps256`

Fixes #152749</pre>
</div>
</content>
</entry>
<entry>
<title>[Clang][X86] Replace unnecessary `vfmadd*` builtins with `element_wise_fma` (#152545)</title>
<updated>2025-08-08T19:51:15+00:00</updated>
<author>
<name>moorabbit</name>
<email>moorabbit@proton.me</email>
</author>
<published>2025-08-08T19:51:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=989c0d252650476baea1345c8f446a3dd4f0d3fe'/>
<id>989c0d252650476baea1345c8f446a3dd4f0d3fe</id>
<content type='text'>
The following intrinsics were replaced by `__builtin_elementwise_fma`:
- `__builtin_ia32_vfmaddps(256)`
- `__builtin_ia32_vfmaddpd(256)`
- `__builtin_ia32_vfmaddph(256)`
- `__builtin_ia32_vfmaddbf16(128 | 256 | 512)`

All the aforementioned `__builtin_ia32_vfmadd*` intrinsics are
equivalent to a `__builtin_elementwise_fma`, so keeping them is an
unnecessary indirection.

Fixes [#152461](https://github.com/llvm/llvm-project/issues/152461)

---------

Co-authored-by: Simon Pilgrim &lt;llvm-dev@redking.me.uk&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following intrinsics were replaced by `__builtin_elementwise_fma`:
- `__builtin_ia32_vfmaddps(256)`
- `__builtin_ia32_vfmaddpd(256)`
- `__builtin_ia32_vfmaddph(256)`
- `__builtin_ia32_vfmaddbf16(128 | 256 | 512)`

All the aforementioned `__builtin_ia32_vfmadd*` intrinsics are
equivalent to a `__builtin_elementwise_fma`, so keeping them is an
unnecessary indirection.

Fixes [#152461](https://github.com/llvm/llvm-project/issues/152461)

---------

Co-authored-by: Simon Pilgrim &lt;llvm-dev@redking.me.uk&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (#138360)</title>
<updated>2025-06-25T04:07:07+00:00</updated>
<author>
<name>Reid Kleckner</name>
<email>rnk@google.com</email>
</author>
<published>2025-06-25T04:07:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=948cc91188e5a2d60917ff5bc953987a80a3949c'/>
<id>948cc91188e5a2d60917ff5bc953987a80a3949c</id>
<content type='text'>
This reverts commit 83ff9d4a34b1e579dd809759d13b70b8837f0cde.

Don't change the builtin signature of _mm_prefetch this time.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 83ff9d4a34b1e579dd809759d13b70b8837f0cde.

Don't change the builtin signature of _mm_prefetch this time.</pre>
</div>
</content>
</entry>
<entry>
<title>[X86][AVX10.2] Replace nepbh with bf16 to match with others, NFCI (#134240)</title>
<updated>2025-04-04T03:27:39+00:00</updated>
<author>
<name>Phoebe Wang</name>
<email>phoebe.wang@intel.com</email>
</author>
<published>2025-04-04T03:27:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=897f9a51b981c773a63dd94709d9de2442feb008'/>
<id>897f9a51b981c773a63dd94709d9de2442feb008</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][clang] Remove superfluous header files after refactor in #132252 (#132495)</title>
<updated>2025-03-26T14:45:00+00:00</updated>
<author>
<name>Jonathan Thackray</name>
<email>jonathan.thackray@arm.com</email>
</author>
<published>2025-03-26T14:45:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a1a74c9e80f983c01587bb86523e4e8b83e87d42'/>
<id>a1a74c9e80f983c01587bb86523e4e8b83e87d42</id>
<content type='text'>
Remove superfluous header files after refactor in #132252</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove superfluous header files after refactor in #132252</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (#132252)</title>
<updated>2025-03-21T19:09:39+00:00</updated>
<author>
<name>Jonathan Thackray</name>
<email>jonathan.thackray@arm.com</email>
</author>
<published>2025-03-21T19:09:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7f920e2e5f70b25c79adbc0b1005b1d1286d4681'/>
<id>7f920e2e5f70b25c79adbc0b1005b1d1286d4681</id>
<content type='text'>
clang/lib/CodeGen/CGBuiltin.cpp is over 1MB long (&gt;23k LoC), and can
take minutes to recompile (depending on compiler and host system) when
modified, and 5 seconds for clangd to update for every edit. Splitting
this file was discussed in this thread:

   https://discourse.llvm.org/t/splitting-clang-s-cgbuiltin-cpp-over-23k-lines-long-takes-1min-to-compile/

and the idea has received a number of +1 votes, hence this change.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
clang/lib/CodeGen/CGBuiltin.cpp is over 1MB long (&gt;23k LoC), and can
take minutes to recompile (depending on compiler and host system) when
modified, and 5 seconds for clangd to update for every edit. Splitting
this file was discussed in this thread:

   https://discourse.llvm.org/t/splitting-clang-s-cgbuiltin-cpp-over-23k-lines-long-takes-1min-to-compile/

and the idea has received a number of +1 votes, hence this change.</pre>
</div>
</content>
</entry>
</feed>
