This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch devel/omp/gcc-12 in repository gcc.
from ae2dca26602 Add 'libgomp.c/alloc-ompx_host_mem_alloc-1.c' new 1091d03bbc0 openmp: Add Fortran support for "omp unroll" directive new b35b06e9d39 openmp: Add C/C++ support for "omp unroll" directive new 069d7ce1c90 openacc: Rename OMP_CLAUSE_TILE to OMP_CLAUSE_OACC_TILE new a263c8046d8 openmp: Add Fortran support for "omp tile" new 505f7dcb4a4 openmp: Add C/C++ support for "omp tile" new 8e224895695 openmp: Add Fortran support for loop transformations on inn [...] new 09f39bb1141 openmp: Add C/C++ support for loop transformations on inner loops
The 7 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/Makefile.in | 1 + gcc/c-family/c-gimplify.cc | 1 + gcc/c-family/c-omp.cc | 12 +- gcc/c-family/c-pragma.cc | 2 + gcc/c-family/c-pragma.h | 7 +- gcc/c/c-parser.cc | 403 ++++- gcc/c/c-typeck.cc | 10 +- gcc/cp/cp-gimplify.cc | 3 + gcc/cp/parser.cc | 445 ++++- gcc/cp/pt.cc | 15 +- gcc/cp/semantics.cc | 103 +- gcc/fortran/dump-parse-tree.cc | 30 + gcc/fortran/gfortran.h | 14 +- gcc/fortran/match.h | 2 + gcc/fortran/openmp.cc | 460 ++++- gcc/fortran/parse.cc | 47 +- gcc/fortran/resolve.cc | 6 + gcc/fortran/st.cc | 2 + gcc/fortran/trans-openmp.cc | 187 ++- gcc/fortran/trans.cc | 2 + gcc/gimple-pretty-print.cc | 6 + gcc/gimple.h | 1 + gcc/gimplify.cc | 78 +- gcc/omp-general.cc | 22 +- gcc/omp-general.h | 1 + gcc/omp-low.cc | 6 +- gcc/omp-transform-loops.cc | 1764 ++++++++++++++++++++ gcc/params.opt | 9 + gcc/passes.def | 1 + .../gomp/loop-transforms/imperfect-loop-nest.c | 12 + .../c-c++-common/gomp/loop-transforms/tile-1.c | 164 ++ .../c-c++-common/gomp/loop-transforms/tile-2.c | 183 ++ .../c-c++-common/gomp/loop-transforms/tile-3.c | 117 ++ .../c-c++-common/gomp/loop-transforms/tile-4.c | 322 ++++ .../c-c++-common/gomp/loop-transforms/tile-5.c | 150 ++ .../c-c++-common/gomp/loop-transforms/tile-6.c | 34 + .../c-c++-common/gomp/loop-transforms/tile-7.c | 31 + .../c-c++-common/gomp/loop-transforms/tile-8.c | 40 + .../c-c++-common/gomp/loop-transforms/unroll-1.c | 133 ++ .../c-c++-common/gomp/loop-transforms/unroll-2.c | 95 ++ .../c-c++-common/gomp/loop-transforms/unroll-3.c | 18 + .../c-c++-common/gomp/loop-transforms/unroll-4.c | 19 + .../c-c++-common/gomp/loop-transforms/unroll-5.c | 19 + .../c-c++-common/gomp/loop-transforms/unroll-6.c | 20 + .../c-c++-common/gomp/loop-transforms/unroll-7.c | 144 ++ .../gomp/loop-transforms/unroll-inner-1.c | 15 + .../gomp/loop-transforms/unroll-inner-2.c | 31 + .../gomp/loop-transforms/unroll-non-rect-1.c | 37 + .../gomp/loop-transforms/unroll-non-rect-2.c | 22 + .../gomp/loop-transforms/unroll-simd-1.c | 84 + gcc/testsuite/g++.dg/gomp/loop-transforms/tile-1.h | 27 + .../g++.dg/gomp/loop-transforms/tile-1a.C | 27 + .../g++.dg/gomp/loop-transforms/tile-1b.C | 27 + .../g++.dg/gomp/loop-transforms/unroll-1.C | 42 + .../g++.dg/gomp/loop-transforms/unroll-2.C | 47 + .../g++.dg/gomp/loop-transforms/unroll-3.C | 37 + .../gomp/loop-transforms/inner-loops.f90 | 124 ++ .../gfortran.dg/gomp/loop-transforms/tile-1.f90 | 163 ++ .../gfortran.dg/gomp/loop-transforms/tile-1a.f90 | 10 + .../gfortran.dg/gomp/loop-transforms/tile-2.f90 | 80 + .../gfortran.dg/gomp/loop-transforms/tile-3.f90 | 18 + .../gfortran.dg/gomp/loop-transforms/tile-4.f90 | 95 ++ .../gomp/loop-transforms/tile-imperfect-nest.f90 | 93 ++ .../gomp/loop-transforms/tile-inner-loops-1.f90 | 16 + .../gomp/loop-transforms/tile-inner-loops-2.f90 | 23 + .../gomp/loop-transforms/tile-inner-loops-3.f90 | 22 + .../gomp/loop-transforms/tile-inner-loops-3a.f90 | 31 + .../gomp/loop-transforms/tile-inner-loops-4.f90 | 30 + .../gomp/loop-transforms/tile-inner-loops-4a.f90 | 26 + .../gomp/loop-transforms/tile-inner-loops-5.f90 | 123 ++ .../loop-transforms/tile-non-rectangular-1.f90 | 71 + .../loop-transforms/tile-non-rectangular-2.f90 | 12 + .../gomp/loop-transforms/tile-unroll-1.f90 | 57 + .../gfortran.dg/gomp/loop-transforms/unroll-1.f90 | 277 +++ .../gfortran.dg/gomp/loop-transforms/unroll-10.f90 | 7 + .../gfortran.dg/gomp/loop-transforms/unroll-11.f90 | 75 + .../gfortran.dg/gomp/loop-transforms/unroll-12.f90 | 29 + .../gfortran.dg/gomp/loop-transforms/unroll-2.f90 | 22 + .../gfortran.dg/gomp/loop-transforms/unroll-3.f90 | 17 + .../gfortran.dg/gomp/loop-transforms/unroll-4.f90 | 18 + .../gfortran.dg/gomp/loop-transforms/unroll-5.f90 | 18 + .../gfortran.dg/gomp/loop-transforms/unroll-6.f90 | 19 + .../gfortran.dg/gomp/loop-transforms/unroll-7.f90 | 62 + .../gfortran.dg/gomp/loop-transforms/unroll-8.f90 | 22 + .../gfortran.dg/gomp/loop-transforms/unroll-9.f90 | 18 + .../gomp/loop-transforms/unroll-inner-loop.f90 | 57 + .../gomp/loop-transforms/unroll-no-clause-1.f90 | 20 + .../gomp/loop-transforms/unroll-no-clause-2.f90 | 21 + .../gomp/loop-transforms/unroll-no-clause-3.f90 | 23 + .../gomp/loop-transforms/unroll-non-rect-1.f90 | 31 + .../gomp/loop-transforms/unroll-simd-1.f90 | 244 +++ .../gomp/loop-transforms/unroll-simd-2.f90 | 57 + .../gomp/loop-transforms/unroll-tile-1.f90 | 37 + .../gomp/loop-transforms/unroll-tile-2.f90 | 41 + .../gomp/loop-transforms/unroll-tile-inner-1.f90 | 25 + gcc/tree-core.h | 14 +- gcc/tree-nested.cc | 4 +- gcc/tree-pass.h | 1 + gcc/tree-pretty-print.cc | 56 +- gcc/tree.cc | 10 +- gcc/tree.def | 6 + gcc/tree.h | 23 +- .../testsuite/libgomp.c++/loop-transforms/tile-2.C | 69 + .../testsuite/libgomp.c++/loop-transforms/tile-3.C | 28 + .../libgomp.c++/loop-transforms/unroll-1.C | 73 + .../libgomp.c++/loop-transforms/unroll-2.C | 34 + .../libgomp.c++/loop-transforms/unroll-full-tile.C | 84 + .../loop-transforms/matrix-1.h | 70 + .../loop-transforms/matrix-constant-iter.h | 71 + .../loop-transforms/matrix-helper.h | 19 + .../loop-transforms/matrix-no-directive-1.c | 11 + .../matrix-no-directive-unroll-full-1.c | 13 + .../matrix-omp-distribute-parallel-for-1.c | 6 + .../loop-transforms/matrix-omp-for-1.c | 13 + .../loop-transforms/matrix-omp-parallel-for-1.c | 13 + .../matrix-omp-parallel-masked-taskloop-1.c | 6 + .../matrix-omp-parallel-masked-taskloop-simd-1.c | 6 + .../matrix-omp-target-parallel-for-1.c | 13 + ...ix-omp-target-teams-distribute-parallel-for-1.c | 6 + .../loop-transforms/matrix-omp-taskloop-1.c | 6 + .../matrix-omp-teams-distribute-parallel-for-1.c | 6 + .../loop-transforms/matrix-simd-1.c | 6 + .../loop-transforms/matrix-transform-variants-1.h | 191 +++ .../loop-transforms/unroll-1.c | 76 + .../loop-transforms/unroll-non-rect-1.c | 129 ++ .../libgomp.fortran/loop-transforms/inner-1.f90 | 77 + .../libgomp.fortran/loop-transforms/tile-1.f90 | 71 + .../libgomp.fortran/loop-transforms/tile-2.f90 | 117 ++ .../loop-transforms/tile-unroll-1.f90 | 112 ++ .../loop-transforms/tile-unroll-2.f90 | 71 + .../loop-transforms/tile-unroll-3.f90 | 77 + .../loop-transforms/tile-unroll-4.f90 | 75 + .../libgomp.fortran/loop-transforms/unroll-1.f90 | 52 + .../libgomp.fortran/loop-transforms/unroll-2.f90 | 88 + .../libgomp.fortran/loop-transforms/unroll-3.f90 | 59 + .../libgomp.fortran/loop-transforms/unroll-4.f90 | 72 + .../libgomp.fortran/loop-transforms/unroll-5.f90 | 55 + .../libgomp.fortran/loop-transforms/unroll-6.f90 | 105 ++ .../libgomp.fortran/loop-transforms/unroll-7.f90 | 198 +++ .../libgomp.fortran/loop-transforms/unroll-7a.f90 | 7 + .../libgomp.fortran/loop-transforms/unroll-7b.f90 | 7 + .../libgomp.fortran/loop-transforms/unroll-7c.f90 | 7 + .../libgomp.fortran/loop-transforms/unroll-8.f90 | 38 + .../loop-transforms/unroll-simd-1.f90 | 33 + .../loop-transforms/unroll-tile-1.f90 | 112 ++ .../loop-transforms/unroll-tile-2.f90 | 71 + 146 files changed, 10129 insertions(+), 109 deletions(-) create mode 100644 gcc/omp-transform-loops.cc create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/imperfect-loop-nest.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-1.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-2.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-3.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-4.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-5.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-6.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-7.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/tile-8.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-1.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-2.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-3.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-4.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-5.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-6.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-7.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-inner-1.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-inner-2.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-non-rect-1.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-non-rect-2.c create mode 100644 gcc/testsuite/c-c++-common/gomp/loop-transforms/unroll-simd-1.c create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/tile-1.h create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/tile-1a.C create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/tile-1b.C create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/unroll-1.C create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/unroll-2.C create mode 100644 gcc/testsuite/g++.dg/gomp/loop-transforms/unroll-3.C create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/inner-loops.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-1a.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-3.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-4.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-imperfect-nest.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-3.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-3a.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-4.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-4a.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-inner-loops-5.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-non-rectang [...] create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-non-rectang [...] create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/tile-unroll-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-10.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-11.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-12.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-3.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-4.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-5.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-6.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-7.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-8.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-9.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-inner-loop.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-no-clause-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-no-clause-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-no-clause-3.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-non-rect-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-simd-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-simd-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-tile-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-tile-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/gomp/loop-transforms/unroll-tile-inner-1.f90 create mode 100644 libgomp/testsuite/libgomp.c++/loop-transforms/tile-2.C create mode 100644 libgomp/testsuite/libgomp.c++/loop-transforms/tile-3.C create mode 100644 libgomp/testsuite/libgomp.c++/loop-transforms/unroll-1.C create mode 100644 libgomp/testsuite/libgomp.c++/loop-transforms/unroll-2.C create mode 100644 libgomp/testsuite/libgomp.c++/loop-transforms/unroll-full-tile.C create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-1.h create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-c [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-helper.h create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-n [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-n [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-o [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-simd-1.c create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/matrix-t [...] create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/unroll-1.c create mode 100644 libgomp/testsuite/libgomp.c-c++-common/loop-transforms/unroll-n [...] create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/inner-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-2.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-unroll-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-unroll-2.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-unroll-3.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/tile-unroll-4.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-2.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-3.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-4.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-5.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-6.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-7.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-7a.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-7b.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-7c.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-8.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-simd-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-tile-1.f90 create mode 100644 libgomp/testsuite/libgomp.fortran/loop-transforms/unroll-tile-2.f90