<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/llvm/test/Transforms/ConstProp, 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-10-13T17:34:08+00:00</updated>
<entry>
<title>[ConstantFold] fix inconsistent handling of extractelement with undef index (PR42689)</title>
<updated>2019-10-13T17:34:08+00:00</updated>
<author>
<name>Sanjay Patel</name>
<email>spatel@rotateright.com</email>
</author>
<published>2019-10-13T17:34:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=b32e4664a7156830aa6a5c97d9074269574b1f98'/>
<id>urn:sha1:b32e4664a7156830aa6a5c97d9074269574b1f98</id>
<content type='text'>
Any constant other than zero was already folded to undef if the index is undef.
https://bugs.llvm.org/show_bug.cgi?id=42689

llvm-svn: 374729
</content>
</entry>
<entry>
<title>[ConstProp] add tests for extractelement with undef index; NFC</title>
<updated>2019-10-09T20:14:17+00:00</updated>
<author>
<name>Sanjay Patel</name>
<email>spatel@rotateright.com</email>
</author>
<published>2019-10-09T20:14:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=232b9dc46a301c252c3c54543a3c67e13d517475'/>
<id>urn:sha1:232b9dc46a301c252c3c54543a3c67e13d517475</id>
<content type='text'>
llvm-svn: 374210
</content>
</entry>
<entry>
<title>[ConstProp] allow folding for fma that produces NaN</title>
<updated>2019-09-12T14:10:50+00:00</updated>
<author>
<name>Sanjay Patel</name>
<email>spatel@rotateright.com</email>
</author>
<published>2019-09-12T14:10:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3f5a8083650339336d2431c3376196cdf10e6418'/>
<id>urn:sha1:3f5a8083650339336d2431c3376196cdf10e6418</id>
<content type='text'>
Folding for fma/fmuladd was added here:
rL202914
...and as seen in existing/unchanged tests, that works to propagate NaN
if it's already an input, but we should fold an fma() that creates NaN too.

From IEEE-754-2008 7.2 "Invalid Operation", there are 2 clauses that apply
to fma, so I added tests for those patterns:

  c) fusedMultiplyAdd: fusedMultiplyAdd(0, ∞, c) or fusedMultiplyAdd(∞, 0, c)
     unless c is a quiet NaN; if c is a quiet NaN then it is implementation
     defined whether the invalid operation exception is signaled
  d) addition or subtraction or fusedMultiplyAdd: magnitude subtraction of
     infinities, such as: addition(+∞, −∞)

Differential Revision: https://reviews.llvm.org/D67446

llvm-svn: 371735
</content>
</entry>
<entry>
<title>[ConstProp] add tests for fma that produce NaN; NFC</title>
<updated>2019-09-11T14:18:48+00:00</updated>
<author>
<name>Sanjay Patel</name>
<email>spatel@rotateright.com</email>
</author>
<published>2019-09-11T14:18:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ede0905c1fb2f70abfba593a3a51e7dfae7cca88'/>
<id>urn:sha1:ede0905c1fb2f70abfba593a3a51e7dfae7cca88</id>
<content type='text'>
llvm-svn: 371621
</content>
</entry>
<entry>
<title>[ConstProp] move test file from InstSimplify; NFC</title>
<updated>2019-09-11T14:01:11+00:00</updated>
<author>
<name>Sanjay Patel</name>
<email>spatel@rotateright.com</email>
</author>
<published>2019-09-11T14:01:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=9c4047f26724b89f5ae9f5915a044d65afb9477b'/>
<id>urn:sha1:9c4047f26724b89f5ae9f5915a044d65afb9477b</id>
<content type='text'>
These are constant folding tests; there is no code
directly in InstSimplify for this.

llvm-svn: 371619
</content>
</entry>
<entry>
<title>[ConstantFolding] Fix 'undef' folding for @llvm.[us]{add,sub}.with.overflow ops (PR43188)</title>
<updated>2019-09-01T11:56:52+00:00</updated>
<author>
<name>Roman Lebedev</name>
<email>lebedev.ri@gmail.com</email>
</author>
<published>2019-09-01T11:56:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ff21e3f055adf52972c9ead61452ccce25dc677b'/>
<id>urn:sha1:ff21e3f055adf52972c9ead61452ccce25dc677b</id>
<content type='text'>
As we have already established/fixed in
  https://bugs.llvm.org/show_bug.cgi?id=42209
  https://reviews.llvm.org/D63065
  https://reviews.llvm.org/rL363522
the InstSimplify handling for @llvm.with.overflow ops with undefs
is correct. Therefore if ConstantFolding produces different results,
then it is wrong.

This duplication of code hints at the need for some refactoring,
but for now address the brokenness of ConstantFolding by
copying the known-good handling from rL363522.

Fixes https://bugs.llvm.org/show_bug.cgi?id=43188

llvm-svn: 370608
</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>[ConstantFolding] Fix GetConstantFoldFPValue to avoid cast overflow.</title>
<updated>2019-03-22T16:37:37+00:00</updated>
<author>
<name>Bixia Zheng</name>
<email>bixia@google.com</email>
</author>
<published>2019-03-22T16:37:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=bdf0230cffd13425a7f3492cc7c514fc60173537'/>
<id>urn:sha1:bdf0230cffd13425a7f3492cc7c514fc60173537</id>
<content type='text'>
Summary:
In C++, the behavior of casting a double value that is beyond the range
of a single precision floating-point to a float value is undefined. This
change replaces such a cast with APFloat::convert to convert the value,
which is consistent with how we convert a double value to a half value.

Reviewers: sanjoy

Subscribers: lebedev.ri, sanjoy, jlebar, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D59500

llvm-svn: 356781
</content>
</entry>
<entry>
<title>[ConstantFold] Fix misfolding fcmp of a ConstantExpr NaN with itself.</title>
<updated>2019-02-19T21:21:54+00:00</updated>
<author>
<name>Andrew Scheidecker</name>
<email>andrew@scheidecker.net</email>
</author>
<published>2019-02-19T21:21:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=8ca3f3863ed065b4c7167fe750d414ecf63114f7'/>
<id>urn:sha1:8ca3f3863ed065b4c7167fe750d414ecf63114f7</id>
<content type='text'>
The code incorrectly inferred that the relationship of a constant expression
to itself is FCMP_OEQ (ordered and equal), when it's actually FCMP_UEQ
(unordered *or* equal). This change corrects that, and adds some more limited
folds that can be done in this case.

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

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