<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/test/Transforms/LoopVectorize, branch users/meinersbur/flang_runtime_split-headers</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>[LoopVectorize] Make needsExtract notice scalarized instructions (#119720)</title>
<updated>2025-01-02T14:31:36+00:00</updated>
<author>
<name>John Brawn</name>
<email>john.brawn@arm.com</email>
</author>
<published>2025-01-02T14:31:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=073e65a8e5f92ca9c63c3fcd1c0ce2a36913f9a6'/>
<id>073e65a8e5f92ca9c63c3fcd1c0ce2a36913f9a6</id>
<content type='text'>
LoopVectorizationCostModel::needsExtract should recognise instructions
that have been widened by scalarizing as scalar instructions, and thus
not needing an extract when used by later scalarized instructions.

This fixes an incorrect cost calculation in computePredInstDiscount,
where we are adding a scalarization overhead cost when we shouldn't,
though I haven't come up with a test case where it makes a difference.
It will make a difference when the cost model switches to using the cost
kind TCK_CodeSize for optsize, as not doing this causes the test
LoopVectorize/X86/small-size.ll to get worse.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
LoopVectorizationCostModel::needsExtract should recognise instructions
that have been widened by scalarizing as scalar instructions, and thus
not needing an extract when used by later scalarized instructions.

This fixes an incorrect cost calculation in computePredInstDiscount,
where we are adding a scalarization overhead cost when we shouldn't,
though I haven't come up with a test case where it makes a difference.
It will make a difference when the cost model switches to using the cost
kind TCK_CodeSize for optsize, as not doing this causes the test
LoopVectorize/X86/small-size.ll to get worse.</pre>
</div>
</content>
</entry>
<entry>
<title>[LV] Also verify loops in vector loop removal tests.</title>
<updated>2024-12-31T20:11:23+00:00</updated>
<author>
<name>Florian Hahn</name>
<email>flo@fhahn.com</email>
</author>
<published>2024-12-31T20:11:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3026ecaff54b220409ecc254b4f6209801a251b9'/>
<id>3026ecaff54b220409ecc254b4f6209801a251b9</id>
<content type='text'>
Also verify loop info in tests added in 7d6ec3b9680.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also verify loop info in tests added in 7d6ec3b9680.
</pre>
</div>
</content>
</entry>
<entry>
<title>[LV] Add more tests for vector loop removal.</title>
<updated>2024-12-31T20:08:54+00:00</updated>
<author>
<name>Florian Hahn</name>
<email>flo@fhahn.com</email>
</author>
<published>2024-12-31T20:08:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7d6ec3b9680a53e58235743080bf223067050fbc'/>
<id>7d6ec3b9680a53e58235743080bf223067050fbc</id>
<content type='text'>
Add missing test coverage of loops where the vector loop region can be
removed that include replicate recipes as well as nested loops.

Extra test coverage for https://github.com/llvm/llvm-project/pull/108378.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add missing test coverage of loops where the vector loop region can be
removed that include replicate recipes as well as nested loops.

Extra test coverage for https://github.com/llvm/llvm-project/pull/108378.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "[LV]: Teach LV to recursively (de)interleave.  (#89018)"</title>
<updated>2024-12-30T22:12:24+00:00</updated>
<author>
<name>Muhammad Omair Javaid</name>
<email>omair.javaid@linaro.org</email>
</author>
<published>2024-12-30T20:19:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=332d2647ff128af166f5b0f235c723888c3cd793'/>
<id>332d2647ff128af166f5b0f235c723888c3cd793</id>
<content type='text'>
This reverts commit ccfe0de0e1e37ed369c9bf89dd0188ba0afb2e9a.

This breaks LLVM build on AArch64 SVE Linux buildbots
https://lab.llvm.org/buildbot/#/builders/143/builds/4462
https://lab.llvm.org/buildbot/#/builders/17/builds/4902
https://lab.llvm.org/buildbot/#/builders/4/builds/4399
https://lab.llvm.org/buildbot/#/builders/41/builds/4299
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit ccfe0de0e1e37ed369c9bf89dd0188ba0afb2e9a.

This breaks LLVM build on AArch64 SVE Linux buildbots
https://lab.llvm.org/buildbot/#/builders/143/builds/4462
https://lab.llvm.org/buildbot/#/builders/17/builds/4902
https://lab.llvm.org/buildbot/#/builders/4/builds/4399
https://lab.llvm.org/buildbot/#/builders/41/builds/4299
</pre>
</div>
</content>
</entry>
<entry>
<title>[LV] Check IR generated for both interleaving and vectorizing in test.</title>
<updated>2024-12-30T19:57:26+00:00</updated>
<author>
<name>Florian Hahn</name>
<email>flo@fhahn.com</email>
</author>
<published>2024-12-30T19:57:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b20b6e9ea9e9e1f66feb2663b999f66a8af3a5dc'/>
<id>b20b6e9ea9e9e1f66feb2663b999f66a8af3a5dc</id>
<content type='text'>
Currently the tests would in some cases would only check the vectorized
IR, but not the interleaved IR, if they are different.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently the tests would in some cases would only check the vectorized
IR, but not the interleaved IR, if they are different.
</pre>
</div>
</content>
</entry>
<entry>
<title>[LV] Add additional tests with induction users.</title>
<updated>2024-12-30T17:36:48+00:00</updated>
<author>
<name>Florian Hahn</name>
<email>flo@fhahn.com</email>
</author>
<published>2024-12-30T17:36:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c2be48a6ce87eeaa37e2a0ab531e6e5812dbfa55'/>
<id>c2be48a6ce87eeaa37e2a0ab531e6e5812dbfa55</id>
<content type='text'>
Adds test coverage of post-inc IV users with different opcodes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds test coverage of post-inc IV users with different opcodes.
</pre>
</div>
</content>
</entry>
<entry>
<title>[VPlan] Compute induction end values in VPlan. (#112145)</title>
<updated>2024-12-29T19:05:08+00:00</updated>
<author>
<name>Florian Hahn</name>
<email>flo@fhahn.com</email>
</author>
<published>2024-12-29T19:05:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7f3428d3ed71d87a2088b77b6cab9f3d86544234'/>
<id>7f3428d3ed71d87a2088b77b6cab9f3d86544234</id>
<content type='text'>
Use createDerivedIV to compute IV end values directly in VPlan, instead
of creating them up-front.

This allows updating IV users outside the loop as follow-up.

Depends on https://github.com/llvm/llvm-project/pull/110004 and
https://github.com/llvm/llvm-project/pull/109975.

PR: https://github.com/llvm/llvm-project/pull/112145</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use createDerivedIV to compute IV end values directly in VPlan, instead
of creating them up-front.

This allows updating IV users outside the loop as follow-up.

Depends on https://github.com/llvm/llvm-project/pull/110004 and
https://github.com/llvm/llvm-project/pull/109975.

PR: https://github.com/llvm/llvm-project/pull/112145</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "Reland "[LoopVectorizer] Add support for partial reductions" (#120721)"</title>
<updated>2024-12-27T19:51:54+00:00</updated>
<author>
<name>Zequan Wu</name>
<email>zequanwu@google.com</email>
</author>
<published>2024-12-27T18:18:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4d8f9594b20ae7063863e948907f4f8ef8ce07bd'/>
<id>4d8f9594b20ae7063863e948907f4f8ef8ce07bd</id>
<content type='text'>
This reverts commit c858bf620c3ab2a4db53e84b9365b553c3ad1aa6 as it casuse optimization crash on -O2, see https://github.com/llvm/llvm-project/pull/120721#issuecomment-2563192057
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit c858bf620c3ab2a4db53e84b9365b553c3ad1aa6 as it casuse optimization crash on -O2, see https://github.com/llvm/llvm-project/pull/120721#issuecomment-2563192057
</pre>
</div>
</content>
</entry>
<entry>
<title>[LV]: Teach LV to recursively (de)interleave.  (#89018)</title>
<updated>2024-12-27T12:42:07+00:00</updated>
<author>
<name>Hassnaa Hamdi</name>
<email>hassnaa.hamdi@arm.com</email>
</author>
<published>2024-12-27T12:42:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ccfe0de0e1e37ed369c9bf89dd0188ba0afb2e9a'/>
<id>ccfe0de0e1e37ed369c9bf89dd0188ba0afb2e9a</id>
<content type='text'>
Currently available intrinsics are only ld2/st2, which don't support interleaving factor &gt; 2.
This patch teaches the LV to use ld2/st2 recursively to support high
interleaving factors.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently available intrinsics are only ld2/st2, which don't support interleaving factor &gt; 2.
This patch teaches the LV to use ld2/st2 recursively to support high
interleaving factors.</pre>
</div>
</content>
</entry>
<entry>
<title>[VPlan] Set debug location for VPReduction/VPWidenIntrinsicRecipe.  (#120054)</title>
<updated>2024-12-27T02:37:21+00:00</updated>
<author>
<name>Elvis Wang</name>
<email>elvis.wang@sifive.com</email>
</author>
<published>2024-12-27T02:37:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=47e1c87a613d7453b6d5addc2e23e26bea10c0ce'/>
<id>47e1c87a613d7453b6d5addc2e23e26bea10c0ce</id>
<content type='text'>
This patch add missing debug location for
VPReduction/VPWidenIntrinsicRecipe.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch add missing debug location for
VPReduction/VPWidenIntrinsicRecipe.</pre>
</div>
</content>
</entry>
</feed>
