On Thu, May 06, 2021 at 12:17:03PM +0200, Tobias Burnus wrote: > OpenMP: Fix SIMT for complex/float reduction with && and || > > gcc/ChangeLog: > > * omp-low.c (lower_rec_input_clauses): Also handle SIMT part > for complex/float recution with && and ||. > > libgomp/ChangeLog: > > * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing > complex/floating-point || + && recduction with 'omp target'.
As the float/complex ||/&& reductions are IMHO just conformance issues, not something anyone would actually use in meaningful code - floats or complex aren't the most obvious or efficient holders of boolean values - I think punting SIMT on those isn't a workaround, but the right solution. Jakub