<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/clang/test/OpenMP, 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>2020-01-14T21:59:22+00:00</updated>
<entry>
<title>[OPENMP]Do not emit special virtual function for NVPTX target.</title>
<updated>2020-01-14T21:59:22+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-14T21:42:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a48600c0a653d34f4af760f117755ed1776adf9d'/>
<id>urn:sha1:a48600c0a653d34f4af760f117755ed1776adf9d</id>
<content type='text'>
There are no special virtual function handlers (like __cxa_pure_virtual)
defined for NVPTX target, so just emit such functions as null pointers
to prevent issues with linking and unresolved references.
</content>
</entry>
<entry>
<title>[OPENMP]Improve handling of possibly incorrectly mapped types.</title>
<updated>2020-01-14T19:47:34+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-14T19:13:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=48bad08aa3b3bf6ad5dabe858fa655a623757395'/>
<id>urn:sha1:48bad08aa3b3bf6ad5dabe858fa655a623757395</id>
<content type='text'>
Need to analayze the type of the expression for mapping, not the type of
the declaration.
</content>
</entry>
<entry>
<title>[ItaniumCXXABI] Make tls wrappers properly comdat</title>
<updated>2020-01-13T21:36:26+00:00</updated>
<author>
<name>Martin Storsjö</name>
<email>martin@martin.st</email>
</author>
<published>2019-12-16T22:20:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=810b28edb3f64569054d49d6ddf18a4d802d9b11'/>
<id>urn:sha1:810b28edb3f64569054d49d6ddf18a4d802d9b11</id>
<content type='text'>
Just marking a symbol as weak_odr/linkonce_odr isn't enough for
actually tolerating multiple copies of it at linking on windows,
it has to be made a proper comdat; make it comdat for all platforms
for consistency.

This should hopefully fix
https://bugzilla.mozilla.org/show_bug.cgi?id=1566288.

Differential Revision: https://reviews.llvm.org/D71572
</content>
</entry>
<entry>
<title>[OPENMP]Allow comma in combiner expression.</title>
<updated>2020-01-08T15:00:11+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-08T14:39:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=c74a8adda3bc4fc5714aef14cdcfda944d3038a0'/>
<id>urn:sha1:c74a8adda3bc4fc5714aef14cdcfda944d3038a0</id>
<content type='text'>
Use ParseExpression() instead of ParseAssignmentExpression() to allow
commas in combiner expressions.
</content>
</entry>
<entry>
<title>[OPENMP]Allow using of members in standalone declaration pragmas.</title>
<updated>2020-01-07T18:44:10+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-07T18:39:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=c972f6fd7919b737f4c991d27249b9a947011c8e'/>
<id>urn:sha1:c972f6fd7919b737f4c991d27249b9a947011c8e</id>
<content type='text'>
If standalone OpenMP declaration pragma, like declare mapper or declare
reduction, is declared in the class context, it may reference a member
(data or function) in its internal expressions/statements. So, the
parsing of such pragmas must be dalayed just like the parsing of the
member initializers/definitions before the completion of the class
declaration.
</content>
</entry>
<entry>
<title>[OPENMP]Do not diagnose references to non-integral types for ref in</title>
<updated>2020-01-07T14:28:50+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-07T14:26:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3f2e3dc44b42fab2e991222e74248b7006f1091e'/>
<id>urn:sha1:3f2e3dc44b42fab2e991222e74248b7006f1091e</id>
<content type='text'>
declare simd.

According to the standard, a list-item that appears in a linear clause without the ref modifier must be of integral or pointer type, or must be a reference to an integral or pointer type. Added check that this restriction is applied only to non-ref items.
</content>
</entry>
<entry>
<title>[OPENMP50]Support lastprivate conditional updates in inc/dec unary ops.</title>
<updated>2020-01-06T21:37:01+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-06T21:14:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=7b518dcb291e740c3e957d93c2b4046bc8a97f00'/>
<id>urn:sha1:7b518dcb291e740c3e957d93c2b4046bc8a97f00</id>
<content type='text'>
Added support for checking of updates of variables used in unary
pre(pos) inc/dec expressions.
</content>
</entry>
<entry>
<title>[OPENMP]Fix crash on error message for declare reduction.</title>
<updated>2020-01-03T17:13:03+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-01-03T16:58:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=add743b4348095c0d2e407c7a2b8a87a5f8194b0'/>
<id>urn:sha1:add743b4348095c0d2e407c7a2b8a87a5f8194b0</id>
<content type='text'>
If the qualified reduction name is specified and not found, the compiler
may crash because of not specified parameter.
</content>
</entry>
<entry>
<title>[OpenMP] diagnose zero-length array section in the depend clause</title>
<updated>2020-01-03T16:55:37+00:00</updated>
<author>
<name>Kelvin Li</name>
<email>kkwli0@gmail.com</email>
</author>
<published>2020-01-03T16:55:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=427ffa2cdbbc7337d903ba71823a7830fa92568d'/>
<id>urn:sha1:427ffa2cdbbc7337d903ba71823a7830fa92568d</id>
<content type='text'>
The OpenMP specification disallows having zero-length array
sections in the depend clause (OpenMP 5.0 2.17.11).

Differential Revision: https://reviews.llvm.org/D71969
</content>
</entry>
<entry>
<title>[OPENMP50]Codegen for lastprivate conditional list items.</title>
<updated>2020-01-02T21:43:00+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2019-12-27T14:44:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a58da1a2ff039dd3bb4c43db3919995cf4a74cc7'/>
<id>urn:sha1:a58da1a2ff039dd3bb4c43db3919995cf4a74cc7</id>
<content type='text'>
Added codegen support for lastprivate conditional. According to the
standard, if  when the conditional modifier appears on the clause, if an
assignment to a list item is encountered in the construct then the
original list item is assigned the value that is assigned to the new
list item in the sequentially last iteration or lexically last section
in which such an assignment is encountered.
We look for the assignment operations and check if the left side
references lastprivate conditional variable. Then the next code is
emitted:
if (last_iv_a &lt;= iv) {
  last_iv_a = iv;
  last_a = lp_a;
}

At the end the implicit barrier is generated to wait for the end of all
threads and then in the check for the last iteration the private copy is
assigned the last value.

if (last_iter) {
  lp_a = last_a; // &lt;--- new code
  a = lp_a;      // &lt;--- store of private value to the original  variable.
}
</content>
</entry>
</feed>
