[Bug c/60117] simd reduction clause suppresses simd auto-vectorization when -fopenmp is set

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Feb 10 08:34:00 GMT 2014


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60117

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
If the inner loop body is written as
x = a[i__] > x ? a[i__] : x;
then we actually do vectorize with -Ofast -fopenmp-simd, but for some reason
the vectorized loop is optimized away as dead later on.
For vectorization of the original loop, not sure if we can safely transform omp
simd array conditional stores into unconditional read + conditional operation +
unconditional store, or if we should (and why don't we) transform those into
MASK_STORE.



More information about the Gcc-bugs mailing list