<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.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>[Transforms] Use range constructors of *Set (NFC) (#133203)</title>
<updated>2025-03-27T14:51:58+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-03-27T14:51:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cde58bfc16d46417e55bb4d7614631ac84b72cc0'/>
<id>cde58bfc16d46417e55bb4d7614631ac84b72cc0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][NFC] Add LLVM_DEBUG dumps (#129335)</title>
<updated>2025-03-01T00:10:34+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-03-01T00:10:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=45d018097c8e92f1978478382426c683b19be88f'/>
<id>45d018097c8e92f1978478382426c683b19be88f</id>
<content type='text'>
This patch updates/adds LLVM_DEBUG dumps.
It moves the DEBUG_TYPE into SandboxVectorizer/Debug.h such that it can
be shared across all components of the vectorizer.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch updates/adds LLVM_DEBUG dumps.
It moves the DEBUG_TYPE into SandboxVectorizer/Debug.h such that it can
be shared across all components of the vectorizer.</pre>
</div>
</content>
</entry>
<entry>
<title>[SanbdoxVec][BottomUpVec] Fix diamond shuffle with multiple vector inputs (#126965)</title>
<updated>2025-02-12T22:33:05+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-02-12T22:33:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=31cb807537fa09b3f452ac9f93388ef202f6b4a8'/>
<id>31cb807537fa09b3f452ac9f93388ef202f6b4a8</id>
<content type='text'>
When the operand comes from multiple inputs then we need additional
packing code. When the operands are scalar then we can use a single
InsertElementInst. But when the operands are vectors then we need a
chain of ExtractElementInst and InsertElementInst instructions to insert
the vector value into the destination vector. This is what this patch
implements.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the operand comes from multiple inputs then we need additional
packing code. When the operands are scalar then we can use a single
InsertElementInst. But when the operands are vectors then we need a
chain of ExtractElementInst and InsertElementInst instructions to insert
the vector value into the destination vector. This is what this patch
implements.</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec] Fix warnings introduced by 7a7f9190d03e</title>
<updated>2025-02-12T20:43:24+00:00</updated>
<author>
<name>Vasileios Porpodas</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-02-12T20:42:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e75e61728e201f1941c794a12ea22789b6f24c75'/>
<id>e75e61728e201f1941c794a12ea22789b6f24c75</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Fix mask on diamond reuse with shuffle (#126963)</title>
<updated>2025-02-12T20:29:09+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-02-12T20:29:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7a7f9190d03e12dc5b57d3eb33a84d078de43104'/>
<id>7a7f9190d03e12dc5b57d3eb33a84d078de43104</id>
<content type='text'>
This patch fixes a bug in the creation of shuffle masks when vectorizing
vectors in case of a diamond reuse with shuffle. The mask needs to
enumerate all elements of a vector, not treat the original vector value
as a single element. That is: if vectorizing two &lt;2 x float&gt; vectors
into a &lt;4 x float&gt; the mask needs to have 4 indices, not just 2.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes a bug in the creation of shuffle masks when vectorizing
vectors in case of a diamond reuse with shuffle. The mask needs to
enumerate all elements of a vector, not treat the original vector value
as a single element. That is: if vectorizing two &lt;2 x float&gt; vectors
into a &lt;4 x float&gt; the mask needs to have 4 indices, not just 2.</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Fix legality of SelectInst (#125005)</title>
<updated>2025-02-04T01:33:09+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-02-04T01:33:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c5f99e1bd406540d6b763adf485662e88ba32d2c'/>
<id>c5f99e1bd406540d6b763adf485662e88ba32d2c</id>
<content type='text'>
SelectInsts need special treatment because they are not always
straightforward to vectorize. This patch disables vectorization unless
they are trivially vectorizable.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SelectInsts need special treatment because they are not always
straightforward to vectorize. This patch disables vectorization unless
they are trivially vectorizable.</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Don't vectorize when instructions repeat (#124479)</title>
<updated>2025-01-29T23:54:15+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-01-29T23:54:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e094c0fa677851786b7bdf53bedd11e0f4a59e35'/>
<id>e094c0fa677851786b7bdf53bedd11e0f4a59e35</id>
<content type='text'>
This patch adds a legality check that checks for repeated instrs in a
bundle and won't vectorize if such pattern is found.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds a legality check that checks for repeated instrs in a
bundle and won't vectorize if such pattern is found.</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Pack from different BBs (#124363)</title>
<updated>2025-01-24T23:39:37+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-01-24T23:39:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6409799bdcd86be3ed72e8d172181294d3e5ad09'/>
<id>6409799bdcd86be3ed72e8d172181294d3e5ad09</id>
<content type='text'>
When the inputs of the pack come from different BBs we need to make sure
we emit the pack instructions at the correct place.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the inputs of the pack come from different BBs we need to make sure
we emit the pack instructions at the correct place.</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Diamond reuse multi input (#123426)</title>
<updated>2025-01-22T23:23:47+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-01-22T23:23:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fd087135efe1b62b506c3caef3fef83242a8e504'/>
<id>fd087135efe1b62b506c3caef3fef83242a8e504</id>
<content type='text'>
This patch implements the diamond pattern where we are vectorizing
toward the top of the diamond from both edges, but the second edge may
use elements from a different vector or just scalar values. This
requires some additional packing code (see lit test).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch implements the diamond pattern where we are vectorizing
toward the top of the diamond from both edges, but the second edge may
use elements from a different vector or just scalar values. This
requires some additional packing code (see lit test).</pre>
</div>
</content>
</entry>
<entry>
<title>[SandboxVec][Legality] Implement ShuffleMask (#123404)</title>
<updated>2025-01-17T23:48:24+00:00</updated>
<author>
<name>vporpo</name>
<email>vporpodas@google.com</email>
</author>
<published>2025-01-17T23:48:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=87e4b68195adc81fae40a4fa27e33458a9586fe5'/>
<id>87e4b68195adc81fae40a4fa27e33458a9586fe5</id>
<content type='text'>
This patch implements a helper ShuffleMask data structure that helps
describe shuffles of elements across lanes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch implements a helper ShuffleMask data structure that helps
describe shuffles of elements across lanes.</pre>
</div>
</content>
</entry>
</feed>
