<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp, branch users/nico/python-2</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>[GlobalISel] Combine redundant sext_inreg (#131624)</title>
<updated>2025-04-14T09:48:08+00:00</updated>
<author>
<name>Pierre van Houtryve</name>
<email>pierre.vanhoutryve@amd.com</email>
</author>
<published>2025-04-14T09:48:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c9eebc7af440dc012c94d25351eaba92e6a57910'/>
<id>c9eebc7af440dc012c94d25351eaba92e6a57910</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalISel] Combine (sext (trunc x)) to (sext_inreg x) (#131622)</title>
<updated>2025-03-24T08:32:04+00:00</updated>
<author>
<name>Pierre van Houtryve</name>
<email>pierre.vanhoutryve@amd.com</email>
</author>
<published>2025-03-24T08:32:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c457c8895181aff3c02e9ffdb7e05f58957aa151'/>
<id>c457c8895181aff3c02e9ffdb7e05f58957aa151</id>
<content type='text'>
Split from #131312</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Split from #131312</pre>
</div>
</content>
</entry>
<entry>
<title>Make CombinerHelper methods const (#119529)</title>
<updated>2024-12-20T01:29:18+00:00</updated>
<author>
<name>Paul Bowen-Huggett</name>
<email>paulhuggett@mac.com</email>
</author>
<published>2024-12-20T01:29:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ee7ca0dddafb609090ad1789570c099d95c0afb6'/>
<id>ee7ca0dddafb609090ad1789570c099d95c0afb6</id>
<content type='text'>
There are a number of backends (specifically AArch64, AMDGPU, Mips, and
RISCV) which contain a “TODO: make CombinerHelper methods const”
comment. This PR does just that and makes all of the CombinerHelper
methods const, removes the TODO comments and makes the associated
instances const. This change makes some sense because the CombinerHelper
class simply modifies the state of _other_ objects to which it holds
pointers or references.

Note that AMDGPU contains an identical comment for an instance of
AMDGPUCombinerHelper (a subclass of CombinerHelper). I deliberately
haven’t modified the methods of that class in order to limit the scope
of the change. I’m happy to do so either now or as a follow-up.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are a number of backends (specifically AArch64, AMDGPU, Mips, and
RISCV) which contain a “TODO: make CombinerHelper methods const”
comment. This PR does just that and makes all of the CombinerHelper
methods const, removes the TODO comments and makes the associated
instances const. This change makes some sense because the CombinerHelper
class simply modifies the state of _other_ objects to which it holds
pointers or references.

Note that AMDGPU contains an identical comment for an instance of
AMDGPUCombinerHelper (a subclass of CombinerHelper). I deliberately
haven’t modified the methods of that class in order to limit the scope
of the change. I’m happy to do so either now or as a follow-up.</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalISel] Fix warnings</title>
<updated>2024-12-13T18:24:06+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-12-13T18:24:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f01b62ad4881e61dc5d84e1faa984917ac43453c'/>
<id>f01b62ad4881e61dc5d84e1faa984917ac43453c</id>
<content type='text'>
This patch fixes:

  llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp:167:21: error:
  unused variable 'DL' [-Werror,-Wunused-variable]

  llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp:320:15: error: unused
  variable 'DL' [-Werror,-Wunused-variable]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes:

  llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp:167:21: error:
  unused variable 'DL' [-Werror,-Wunused-variable]

  llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp:320:15: error: unused
  variable 'DL' [-Werror,-Wunused-variable]
</pre>
</div>
</content>
</entry>
<entry>
<title>[GISel] Remove unused DataLayout operand from getApproximateEVTForLLT (#119833)</title>
<updated>2024-12-13T17:09:20+00:00</updated>
<author>
<name>Craig Topper</name>
<email>craig.topper@sifive.com</email>
</author>
<published>2024-12-13T17:09:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0d9fc1743378c73012828698122c46dc580d29eb'/>
<id>0d9fc1743378c73012828698122c46dc580d29eb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalIsel] Combine trunc of binop (#107721)</title>
<updated>2024-09-11T13:04:55+00:00</updated>
<author>
<name>Thorsten Schütt</name>
<email>schuett@gmail.com</email>
</author>
<published>2024-09-11T13:04:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ba4bcce5f5ffa9e7d4af72c20fe4f1baf97075fc'/>
<id>ba4bcce5f5ffa9e7d4af72c20fe4f1baf97075fc</id>
<content type='text'>
trunc (binop X, C) --&gt; binop (trunc X, trunc C)  --&gt; binop (trunc X, C`)

Try to narrow the width of math or bitwise logic instructions by pulling
a truncate ahead of binary operators.

Vx and Nx cores consider 32-bit and 64-bit basic arithmetic equal in
costs.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
trunc (binop X, C) --&gt; binop (trunc X, trunc C)  --&gt; binop (trunc X, C`)

Try to narrow the width of math or bitwise logic instructions by pulling
a truncate ahead of binary operators.

Vx and Nx cores consider 32-bit and 64-bit basic arithmetic equal in
costs.</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalIsel] Push cast through build vector (#104634)</title>
<updated>2024-08-21T08:10:36+00:00</updated>
<author>
<name>Thorsten Schütt</name>
<email>schuett@gmail.com</email>
</author>
<published>2024-08-21T08:10:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0b0ccd56c9cabef48a6c99abe6e0b41ac69e5faa'/>
<id>0b0ccd56c9cabef48a6c99abe6e0b41ac69e5faa</id>
<content type='text'>
Credits: https://github.com/llvm/llvm-project/pull/100563</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Credits: https://github.com/llvm/llvm-project/pull/100563</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalIsel] Revisit ext of ext. (#102769)</title>
<updated>2024-08-16T13:38:56+00:00</updated>
<author>
<name>Thorsten Schütt</name>
<email>schuett@gmail.com</email>
</author>
<published>2024-08-16T13:38:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=710a552dedbf1a28cebac78b481cb78138fbc454'/>
<id>710a552dedbf1a28cebac78b481cb78138fbc454</id>
<content type='text'>
Credits:
https://reviews.llvm.org/D86516

combine-ext.mir

Notable semantic changes:
InstCombine does not mix zero and sign extend,
  see CastInst::isEliminableCastPair.
New version has legality checks.
Folds sext/zext of anyext -&gt; sext/zext
Support for nneg

Future work:
nneg zext of sext -&gt; sext
sext of nneg zext -&gt; sext</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Credits:
https://reviews.llvm.org/D86516

combine-ext.mir

Notable semantic changes:
InstCombine does not mix zero and sign extend,
  see CastInst::isEliminableCastPair.
New version has legality checks.
Folds sext/zext of anyext -&gt; sext/zext
Support for nneg

Future work:
nneg zext of sext -&gt; sext
sext of nneg zext -&gt; sext</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalIsel] Push cast through select. (#100539)</title>
<updated>2024-07-25T17:21:28+00:00</updated>
<author>
<name>Thorsten Schütt</name>
<email>schuett@gmail.com</email>
</author>
<published>2024-07-25T17:21:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=db8c84fc7a75dd60bcfff7160b51e1a55e7e0f73'/>
<id>db8c84fc7a75dd60bcfff7160b51e1a55e7e0f73</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[GlobalIsel] Modernize truncate of ext. (#100338)</title>
<updated>2024-07-24T20:13:52+00:00</updated>
<author>
<name>Thorsten Schütt</name>
<email>schuett@gmail.com</email>
</author>
<published>2024-07-24T20:13:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a'/>
<id>bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a</id>
<content type='text'>
Credits:
https://github.com/llvm/llvm-project/pull/90964
https://reviews.llvm.org/D87050

combine-trunc.mir

Functional changes intended.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Credits:
https://github.com/llvm/llvm-project/pull/90964
https://reviews.llvm.org/D87050

combine-trunc.mir

Functional changes intended.</pre>
</div>
</content>
</entry>
</feed>
