]> git.ipfire.org Git - thirdparty/gcc.git/commit
openmp: Handle even some combined non-rectangular loops
authorJakub Jelinek <jakub@redhat.com>
Wed, 5 Aug 2020 08:45:16 +0000 (10:45 +0200)
committerKwok Cheung Yeung <kcy@codesourcery.com>
Tue, 9 Feb 2021 18:09:02 +0000 (10:09 -0800)
commit4b2c33ef32f483ca78f6c7b3a5ee880aebe75b4c
tree50f4a30516e17136fd043ca3e8ae6b8c031897d0
parent3dd767906dab7d5456fc4c3a98134582b5f8a2ed
openmp: Handle even some combined non-rectangular loops

The number of loops computation and logical iteration -> actual iterator values
computations can now be done separately even on composite constructs (though
for triangular loops it would still be more efficient to propagate a few values
through, will handle that incrementally).
simd and taskloop are still unhandled.

2020-08-05  Jakub Jelinek  <jakub@redhat.com>

* omp-expand.c (expand_omp_for): Don't disallow combined non-rectangular
loops.

* testsuite/libgomp.c/loop-22.c: New test.
* testsuite/libgomp.c/loop-23.c: New test.

(cherry picked from commit 9f3abfb84e2a7ca115b0550c32308b5ada3e6a46)
gcc/ChangeLog.omp
gcc/omp-expand.c
libgomp/ChangeLog.omp
libgomp/testsuite/libgomp.c/loop-22.c [new file with mode: 0644]
libgomp/testsuite/libgomp.c/loop-23.c [new file with mode: 0644]