[committed] OpenMP scan for combined for simd

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Mon Jul 8 14:08:00 GMT 2019


Hi Jakub,

> The following patch handles the last yet unsupported scan case,
> composite #pragma omp {,parallel }for simd ... reduction(inscan, ...) ...
> where we want to both parallelize and vectorize; in the first worksharing
> loop use normal scan support we have for
> #pragma omp simd ... reduction(inscan, ...) ...
> and just store those into the per-thread array, then do the normal
> worksharing loop up/down-sweep and then in the second worksharing loop
> use a simple #pragma omp simd that just combines the two partial sums
> and does the user's scan phase.

some of the new testcases come up as UNRESOLVED on
sparc-sun-solaris2.11, both 32 and 64-bit:

UNRESOLVED: libgomp.c++/scan-13.C scan-tree-dump-times vect "vectorized [2-6] loops" 2
UNRESOLVED: libgomp.c++/scan-16.C scan-tree-dump-times vect "vectorized [2-6] loops" 2

The log shows

libgomp.c++/scan-13.C: dump file does not exist

libgomp.c++/scan-16.C: dump file does not exist

There are similar gcc-testreports results for
mips64el-unknown-linux-gnu, ia64-suse-linux-gnu, m68k-unknown-linux-gnu,
powerpc-ibm-aix7.2.0.0, hppa-unknown-linux-gnu.

While I don't see such failures on i386-pc-solaris2.11, gcc-testresults
shows a couple of cases where all libgomp.c++/scan-1[0-6].C are
unresolved on x86_64-pc-linux-gnu.

Something fishy seems to be going on here.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University



More information about the Gcc-patches mailing list