https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118472
--- Comment #3 from Tamar Christina <tnfchris at gcc dot gnu.org> --- reducer: ---- typedef int a; typedef struct { a b __attribute__((__vector_size__(8))) } c; typedef a d __attribute__((__vector_size__(8))); c e, f, g; d h, j; void k() { c l; l.b[1] = 0; c m = l; __builtin_memcpy(&h, &m, sizeof(h)); j = h; { c l; l.b[1] = 0; m = l; __builtin_memcpy(&h, &m, sizeof(h)); d m = j; __builtin_memcpy(&g, &m, sizeof(g)); e = g; m = h; __builtin_memcpy(&g, &m, sizeof(g)); #pragma omp simd for (long i = 0; i < f.b[0]; i++) f.b[i] = e.b[i] > g.b[i]; } } --- with gcc -O3 -fopenmp-simd patch being tested