<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/clang/test/OpenMP/parallel_master_taskloop_reduction_messages.cpp, branch main</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>[OpenMP][Reduction] Allow PLUS (+) operator on reduction clauses in OMP &gt; 52</title>
<updated>2023-07-20T21:25:13+00:00</updated>
<author>
<name>Fazlay Rabbi</name>
<email>fazlay.rabbi@intel.com</email>
</author>
<published>2023-07-18T19:51:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=52807ba3836ef30c54622f227c4a23e2eb9375cd'/>
<id>52807ba3836ef30c54622f227c4a23e2eb9375cd</id>
<content type='text'>
Currently, clang gives an incorrect reduction identifier error for the PLUS
operator for OpenMP version &gt; 52. But, PLUS operator is allowed in OpenMP
version &gt; 52. This revision fixes this issue and also modified the error
messages to show the correct expected operators in the message based on the OpenMP
version used (prior to OMP 6.0 and since OMP 6.0).

Test Src:
void foo() {
  int a = 0 ;
  #pragma omp parallel reduction(+:a)
    ;
  #pragma omp parallel reduction(-:a)
    ;
}

Before this revision:

$ clang -fopenmp -fopenmp-version=60 test.c -c
test.c:3:34: error: incorrect reduction identifier, expected one of '+', '-', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    3 |   #pragma omp parallel reduction(+:a)
      |                                  ^
test.c:5:34: error: incorrect reduction identifier, expected one of '+', '-', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    5 |   #pragma omp parallel reduction(-:a)
      |                                  ^
2 errors generated.

Wit this revision:

$  clang -fopenmp -fopenmp-version=60 test.c -c
test.c:5:34: error: incorrect reduction identifier, expected one of '+', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    5 |   #pragma omp parallel reduction(-:a)
      |
1 error generated.

Differential Revision: https://reviews.llvm.org/D155635
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, clang gives an incorrect reduction identifier error for the PLUS
operator for OpenMP version &gt; 52. But, PLUS operator is allowed in OpenMP
version &gt; 52. This revision fixes this issue and also modified the error
messages to show the correct expected operators in the message based on the OpenMP
version used (prior to OMP 6.0 and since OMP 6.0).

Test Src:
void foo() {
  int a = 0 ;
  #pragma omp parallel reduction(+:a)
    ;
  #pragma omp parallel reduction(-:a)
    ;
}

Before this revision:

$ clang -fopenmp -fopenmp-version=60 test.c -c
test.c:3:34: error: incorrect reduction identifier, expected one of '+', '-', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    3 |   #pragma omp parallel reduction(+:a)
      |                                  ^
test.c:5:34: error: incorrect reduction identifier, expected one of '+', '-', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    5 |   #pragma omp parallel reduction(-:a)
      |                                  ^
2 errors generated.

Wit this revision:

$  clang -fopenmp -fopenmp-version=60 test.c -c
test.c:5:34: error: incorrect reduction identifier, expected one of '+', '*', '&amp;', '|', '^', '&amp;&amp;', '||', 'min' or 'max' or declare reduction for type 'int'
    5 |   #pragma omp parallel reduction(-:a)
      |
1 error generated.

Differential Revision: https://reviews.llvm.org/D155635
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP 5.2] Deprecate MINUS(-) operator on 'reduction' clause</title>
<updated>2023-05-18T21:02:14+00:00</updated>
<author>
<name>Fazlay Rabbi</name>
<email>fazlay.rabbi@intel.com</email>
</author>
<published>2023-05-11T18:18:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c657363cede78ccb9d42bc137a0ed50c69aa47dc'/>
<id>c657363cede78ccb9d42bc137a0ed50c69aa47dc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] Use compound operators for reduction combiner if available.</title>
<updated>2021-05-11T18:39:12+00:00</updated>
<author>
<name>Mike Rice</name>
<email>michael.p.rice@intel.com</email>
</author>
<published>2021-03-20T00:39:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f90abac6caab3b44e6a000de8cb72d204e74eb76'/>
<id>f90abac6caab3b44e6a000de8cb72d204e74eb76</id>
<content type='text'>
The OpenMP spec seems to require the compound operators be used for
+, *, &amp;, |, and ^ reduction.  So use these if a class has those operators.
If not try the simple operators as we did previously to limit the impact
to existing code.

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

Differential Revision: https://reviews.llvm.org/D101941
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The OpenMP spec seems to require the compound operators be used for
+, *, &amp;, |, and ^ reduction.  So use these if a class has those operators.
If not try the simple operators as we did previously to limit the impact
to existing code.

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

Differential Revision: https://reviews.llvm.org/D101941
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] Ensure testing for versions 4.5 and default - Part 3</title>
<updated>2020-08-27T19:37:04+00:00</updated>
<author>
<name>Saiyedul Islam</name>
<email>Saiyedul.Islam@amd.com</email>
</author>
<published>2020-08-27T19:35:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ff260ad0e014516fbebb4b9f7bcd5e085ac37661'/>
<id>ff260ad0e014516fbebb4b9f7bcd5e085ac37661</id>
<content type='text'>
This third patch in the series removes version 5.0 string from
test cases making them check for default version. It also add test
cases for version 4.5.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D85214
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This third patch in the series removes version 5.0 string from
test cases making them check for default version. It also add test
cases for version 4.5.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D85214
</pre>
</div>
</content>
</entry>
<entry>
<title>[OPENMP]Consider 'omp_null_allocator' as a predefined allocator.</title>
<updated>2020-05-07T14:11:06+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-04-30T17:32:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8026394d3cc77db6f8172eeaa83b9747979c8642'/>
<id>8026394d3cc77db6f8172eeaa83b9747979c8642</id>
<content type='text'>
Summary:
omp.h header file defines omp_null_allocator as a predefined allocator,
need to consider it also as a predefined allocator.

Reviewers: jdoerfert

Subscribers: jholewinski, yaxunl, guansong, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D79186
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
omp.h header file defines omp_null_allocator as a predefined allocator,
need to consider it also as a predefined allocator.

Reviewers: jdoerfert

Subscribers: jholewinski, yaxunl, guansong, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D79186
</pre>
</div>
</content>
</entry>
<entry>
<title>[OPENMP50]Support 'task' modifier in reduction clauses.</title>
<updated>2020-04-30T18:43:01+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2020-04-22T12:14:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1c1d9d9d7fd33fb142b40d03bd1fbbf9583197b4'/>
<id>1c1d9d9d7fd33fb142b40d03bd1fbbf9583197b4</id>
<content type='text'>
Summary:
Added basic support for 'task' modifier in the reduction clauses in
non-simd parallel and worksharing constructs.

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D78738
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Added basic support for 'task' modifier in the reduction clauses in
non-simd parallel and worksharing constructs.

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D78738
</pre>
</div>
</content>
</entry>
<entry>
<title>[OPENMP50]Add support for 'parallel master taskloop' construct.</title>
<updated>2019-10-14T17:17:41+00:00</updated>
<author>
<name>Alexey Bataev</name>
<email>a.bataev@hotmail.com</email>
</author>
<published>2019-10-14T17:17:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5bbceadfc89dda6ff11195aaa3043b2eaaadad25'/>
<id>5bbceadfc89dda6ff11195aaa3043b2eaaadad25</id>
<content type='text'>
Added parsing/sema/codegen support for 'parallel master taskloop'
constructs. Some of the clauses, like 'grainsize', 'num_tasks', 'final'
and 'priority' are not supported in full, only constant expressions can
be used currently in these clauses.

llvm-svn: 374791
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added parsing/sema/codegen support for 'parallel master taskloop'
constructs. Some of the clauses, like 'grainsize', 'num_tasks', 'final'
and 'priority' are not supported in full, only constant expressions can
be used currently in these clauses.

llvm-svn: 374791
</pre>
</div>
</content>
</entry>
</feed>
