<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/utils/TableGen, branch main</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>[TableGen] Remove unnecessary use of MVT::SimpleTy. NFC</title>
<updated>2025-11-23T08:13:36+00:00</updated>
<author>
<name>Craig Topper</name>
<email>craig.topper@sifive.com</email>
</author>
<published>2025-11-23T08:11:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=08f72fe77a53762c94dc04f9fc7c6e038141aa55'/>
<id>08f72fe77a53762c94dc04f9fc7c6e038141aa55</id>
<content type='text'>
This was missed in 0ef522ff68fff4266bf85e7b7a507a16a8fd34ee
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This was missed in 0ef522ff68fff4266bf85e7b7a507a16a8fd34ee
</pre>
</div>
</content>
</entry>
<entry>
<title>[TableGen] Use MVT instead of MVT::SimpleValueType. NFC (#169180)</title>
<updated>2025-11-23T01:00:56+00:00</updated>
<author>
<name>Craig Topper</name>
<email>craig.topper@sifive.com</email>
</author>
<published>2025-11-23T01:00:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0ef522ff68fff4266bf85e7b7a507a16a8fd34ee'/>
<id>0ef522ff68fff4266bf85e7b7a507a16a8fd34ee</id>
<content type='text'>
This improves type safety and is less verbose. Use SimpleTy only where
an integer is needed like switches or emitting a VBR.

---------

Co-authored-by: Sergei Barannikov &lt;barannikov88@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This improves type safety and is less verbose. Use SimpleTy only where
an integer is needed like switches or emitting a VBR.

---------

Co-authored-by: Sergei Barannikov &lt;barannikov88@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[TableGen] Constify CodeGenInstruction where possible (NFC) (#169193)</title>
<updated>2025-11-23T00:22:48+00:00</updated>
<author>
<name>Sergei Barannikov</name>
<email>barannikov88@gmail.com</email>
</author>
<published>2025-11-23T00:22:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0619292195ecd47ac05b0c7759992b400abec52c'/>
<id>0619292195ecd47ac05b0c7759992b400abec52c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Remove unused local variables (NFC) (#169171)</title>
<updated>2025-11-22T23:30:28+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-11-22T23:30:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9de880e03076e7d9611a205974463465d47d3e21'/>
<id>9de880e03076e7d9611a205974463465d47d3e21</id>
<content type='text'>
Identified with bugprone-unused-local-non-trivial-variable.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with bugprone-unused-local-non-trivial-variable.</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] Introduce "loop sequence" as directive association (#168934)</title>
<updated>2025-11-21T13:40:44+00:00</updated>
<author>
<name>Krzysztof Parzyszek</name>
<email>Krzysztof.Parzyszek@amd.com</email>
</author>
<published>2025-11-21T13:40:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d69320e775a7c4af8f6e6bb6bd0574ead8e3d69c'/>
<id>d69320e775a7c4af8f6e6bb6bd0574ead8e3d69c</id>
<content type='text'>
OpenMP 6.0 introduced a `fuse` directive, and with it a "loop sequence"
as the associated code. What used to be "loop association" has become
"loop-nest association".

Rename Association::Loop to LoopNest, add Association::LoopSeq to
represent the "loop sequence" association.

Change the association of fuse from "block" to "loop sequence".</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OpenMP 6.0 introduced a `fuse` directive, and with it a "loop sequence"
as the associated code. What used to be "loop association" has become
"loop-nest association".

Rename Association::Loop to LoopNest, add Association::LoopSeq to
represent the "loop sequence" association.

Change the association of fuse from "block" to "loop sequence".</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][TableGen] Use `IfGuardEmitter` in CallingConvEmitter (#168763)</title>
<updated>2025-11-19T22:40:20+00:00</updated>
<author>
<name>Rahul Joshi</name>
<email>rjoshi@nvidia.com</email>
</author>
<published>2025-11-19T22:40:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=308185e61abb5a06af1786902f1b3768b5d46be5'/>
<id>308185e61abb5a06af1786902f1b3768b5d46be5</id>
<content type='text'>
Use `IfGuardEmitter` in CallingConvEmitter. Additionally refactor the
code a bit to extract duplicated code to emit the CC function prototype
into a helper function.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use `IfGuardEmitter` in CallingConvEmitter. Additionally refactor the
code a bit to extract duplicated code to emit the CC function prototype
into a helper function.</pre>
</div>
</content>
</entry>
<entry>
<title>[Analysis] Move TargetLibraryInfo data to TableGen (#165009)</title>
<updated>2025-11-19T21:05:00+00:00</updated>
<author>
<name>Kai Nacke</name>
<email>kai.peter.nacke@ibm.com</email>
</author>
<published>2025-11-19T21:05:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c9f573463ebd7b4e46da4877802f2364f700e54a'/>
<id>c9f573463ebd7b4e46da4877802f2364f700e54a</id>
<content type='text'>
The collection of library function names in TargetLibraryInfo faces
similar challenges as RuntimeLibCalls in the IR component. The number of
function names is large, there are numerous customizations based on the
triple (including alternate names), and there is a lot of replicated
data in the signature table.

The ultimate goal would be to capture all lbrary function related
information in a .td file. This PR brings the current .def file to
TableGen, almost as a 1:1 replacement. However, there are some
improvements which are not possible in the current implementation:

- the function names are now stored as a long string together with an
offset table.
- the table of signatures is now deduplicated, using an offset table for
access.

The size of the object file decreases about 34kB with these changes. The
hash table of all function names is still constructed dynamically. A
static table like for RuntimeLibCalls is the next logical step.

The main motivation for this change is that I have to add a large number
of custom names for z/OS (like in RuntimeLibCalls.td), and the current
infrastructur does not support this very well.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The collection of library function names in TargetLibraryInfo faces
similar challenges as RuntimeLibCalls in the IR component. The number of
function names is large, there are numerous customizations based on the
triple (including alternate names), and there is a lot of replicated
data in the signature table.

The ultimate goal would be to capture all lbrary function related
information in a .td file. This PR brings the current .def file to
TableGen, almost as a 1:1 replacement. However, there are some
improvements which are not possible in the current implementation:

- the function names are now stored as a long string together with an
offset table.
- the table of signatures is now deduplicated, using an offset table for
access.

The size of the object file decreases about 34kB with these changes. The
hash table of all function names is still constructed dynamically. A
static table like for RuntimeLibCalls is the next logical step.

The main motivation for this change is that I have to add a large number
of custom names for z/OS (like in RuntimeLibCalls.td), and the current
infrastructur does not support this very well.</pre>
</div>
</content>
</entry>
<entry>
<title>[TableGen] Use size_t for SubRegIndicesSize (NFC) (#168728)</title>
<updated>2025-11-19T19:23:53+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-11-19T19:23:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fc95558f628de4243dc85e31eaaac795435ca031'/>
<id>fc95558f628de4243dc85e31eaaac795435ca031</id>
<content type='text'>
This patch changes the type of SubRegIndicesSize to size_t.  The
original type deduced for "auto" is a signed type, but size_t, an
unsigned type, is safe here according to the usage.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch changes the type of SubRegIndicesSize to size_t.  The
original type deduced for "auto" is a signed type, but size_t, an
unsigned type, is safe here according to the usage.</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][TableGen] Add IfGuardEmitter and adopt it in InstrInfoEmitter (#168616)</title>
<updated>2025-11-19T15:33:37+00:00</updated>
<author>
<name>Rahul Joshi</name>
<email>rjoshi@nvidia.com</email>
</author>
<published>2025-11-19T15:33:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=139f726c84bc2c5144d10a79dd8f31e17ce7e03b'/>
<id>139f726c84bc2c5144d10a79dd8f31e17ce7e03b</id>
<content type='text'>
Add a RAII `IfGuardEmitter` to insert simple #if guards and adopt it in
InstrInfoEmitter.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a RAII `IfGuardEmitter` to insert simple #if guards and adopt it in
InstrInfoEmitter.</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Use llvm::size (NFC) (#168675)</title>
<updated>2025-11-19T15:29:57+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-11-19T15:29:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=19129ea34388a923fcc9f5e7222ee238adfca0c6'/>
<id>19129ea34388a923fcc9f5e7222ee238adfca0c6</id>
<content type='text'>
Note that llvm::size only works on types that allow std::distance in
O(1).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Note that llvm::size only works on types that allow std::distance in
O(1).</pre>
</div>
</content>
</entry>
</feed>
