<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/llvm/test/Transforms/LoopVersioningLICM, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-05-29T20:47:59+00:00</updated>
<entry>
<title>LoopVersioningLICM: Respect convergent and noduplicate</title>
<updated>2019-05-29T20:47:59+00:00</updated>
<author>
<name>Matt Arsenault</name>
<email>Matthew.Arsenault@amd.com</email>
</author>
<published>2019-05-29T20:47:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=79b3ea701c8be993e11ea211ad35be2d178f5a08'/>
<id>urn:sha1:79b3ea701c8be993e11ea211ad35be2d178f5a08</id>
<content type='text'>
llvm-svn: 362031
</content>
</entry>
<entry>
<title>Revert "Temporarily Revert "Add basic loop fusion pass.""</title>
<updated>2019-04-17T04:52:47+00:00</updated>
<author>
<name>Eric Christopher</name>
<email>echristo@gmail.com</email>
</author>
<published>2019-04-17T04:52:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=cee313d288a4faf0355d76fb6e0e927e211d08a5'/>
<id>urn:sha1:cee313d288a4faf0355d76fb6e0e927e211d08a5</id>
<content type='text'>
The reversion apparently deleted the test/Transforms directory.

Will be re-reverting again.

llvm-svn: 358552
</content>
</entry>
<entry>
<title>Temporarily Revert "Add basic loop fusion pass."</title>
<updated>2019-04-17T02:12:23+00:00</updated>
<author>
<name>Eric Christopher</name>
<email>echristo@gmail.com</email>
</author>
<published>2019-04-17T02:12:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a86343512845c9c1fdbac865fea88aa5fce7142a'/>
<id>urn:sha1:a86343512845c9c1fdbac865fea88aa5fce7142a</id>
<content type='text'>
As it's causing some bot failures (and per request from kbarton).

This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.

llvm-svn: 358546
</content>
</entry>
<entry>
<title>[LAA] Correctly return a half-open range in expandBounds</title>
<updated>2017-04-05T09:24:26+00:00</updated>
<author>
<name>James Molloy</name>
<email>james.molloy@arm.com</email>
</author>
<published>2017-04-05T09:24:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=37dd4d7aaab4df34b732d4238627049948a0fef6'/>
<id>urn:sha1:37dd4d7aaab4df34b732d4238627049948a0fef6</id>
<content type='text'>
This is a latent bug that's been hanging around for a while. For a loop-invariant
pointer, expandBounds would return the range {Ptr, Ptr}, but this was interpreted
as a half-open range, not a closed range. So we ended up planting incorrect
bounds checks. Even worse, they were tautological, so we ended up incorrectly
executing the optimized loop.

llvm-svn: 299526
</content>
</entry>
<entry>
<title>[Loop Vectorizer] Fixed memory confilict checks.</title>
<updated>2016-08-28T08:53:53+00:00</updated>
<author>
<name>Elena Demikhovsky</name>
<email>elena.demikhovsky@intel.com</email>
</author>
<published>2016-08-28T08:53:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3622fbfc6878952eed3545fb60926e704729f0d1'/>
<id>urn:sha1:3622fbfc6878952eed3545fb60926e704729f0d1</id>
<content type='text'>
Fixed a bug in run-time checks for possible memory conflicts inside loop.
The bug is in Low &lt;-&gt; High boundaries calculation. The High boundary should be calculated as "last memory access pointer + element size".

Differential revision: https://reviews.llvm.org/D23176

llvm-svn: 279930
</content>
</entry>
<entry>
<title>Make MDNode::intersect faster than O(n * m)</title>
<updated>2016-08-16T18:48:37+00:00</updated>
<author>
<name>David Majnemer</name>
<email>david.majnemer@gmail.com</email>
</author>
<published>2016-08-16T18:48:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=00940fb8544767ba5217922c4ba96677aabe9eb3'/>
<id>urn:sha1:00940fb8544767ba5217922c4ba96677aabe9eb3</id>
<content type='text'>
It is pretty easy to get it down to O(nlogn + mlogm).  This
implementation has the added benefit of automatically deduplicating
entries between the two sets.

llvm-svn: 278837
</content>
</entry>
<entry>
<title>[LoopVersioningLICM] Add test coverage for llvm.loop.licm_versioning.disable</title>
<updated>2016-04-22T18:34:50+00:00</updated>
<author>
<name>Adam Nemet</name>
<email>anemet@apple.com</email>
</author>
<published>2016-04-22T18:34:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=54053a518e56c9f1eed417a5d46a62081a860ab9'/>
<id>urn:sha1:54053a518e56c9f1eed417a5d46a62081a860ab9</id>
<content type='text'>
In the next change, I am generalizing the function
findStringMetadataForLoop and I want to make sure I don't break this.
Looks like there was no coverage for this so far.

llvm-svn: 267182
</content>
</entry>
<entry>
<title>Corrected tests for Loop Versioning LICM, by adding “REQUIRES: asserts”.</title>
<updated>2016-02-06T12:34:41+00:00</updated>
<author>
<name>Ashutosh Nema</name>
<email>ashu1212@gmail.com</email>
</author>
<published>2016-02-06T12:34:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3bc6d46e621c0a79028dfae50301a6e66e1cfa85'/>
<id>urn:sha1:3bc6d46e621c0a79028dfae50301a6e66e1cfa85</id>
<content type='text'>
Earlier they were failing under no-assert build.

llvm-svn: 259989
</content>
</entry>
<entry>
<title>New Loop Versioning LICM Pass</title>
<updated>2016-02-06T07:47:48+00:00</updated>
<author>
<name>Ashutosh Nema</name>
<email>ashu1212@gmail.com</email>
</author>
<published>2016-02-06T07:47:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=df6763abe85cabbd1b217e6740c296443c2b436f'/>
<id>urn:sha1:df6763abe85cabbd1b217e6740c296443c2b436f</id>
<content type='text'>
Summary:
When alias analysis is uncertain about the aliasing between any two accesses,
it will return MayAlias. This uncertainty from alias analysis restricts LICM
from proceeding further. In cases where alias analysis is uncertain we might
use loop versioning as an alternative.

Loop Versioning will create a version of the loop with aggressive aliasing
assumptions in addition to the original with conservative (default) aliasing
assumptions. The version of the loop making aggressive aliasing assumptions
will have all the memory accesses marked as no-alias. These two versions of
loop will be preceded by a memory runtime check. This runtime check consists
of bound checks for all unique memory accessed in loop, and it ensures the
lack of memory aliasing. The result of the runtime check determines which of
the loop versions is executed: If the runtime check detects any memory
aliasing, then the original loop is executed. Otherwise, the version with
aggressive aliasing assumptions is used.

The pass is off by default and can be enabled with command line option 
-enable-loop-versioning-licm.

Reviewers: hfinkel, anemet, chatur01, reames

Subscribers: MatzeB, grosser, joker.eph, sanjoy, javed.absar, sbaranga,
             llvm-commits

Differential Revision: http://reviews.llvm.org/D9151

llvm-svn: 259986
</content>
</entry>
</feed>
