https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99746
--- Comment #11 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Tamar Christina from comment #7) > the problem starts because it marks _50 as hybrid, but don't see why it > thinks that... Because t.f:36:16: note: Processing hybrid candidate : IMAGPART_EXPR <(*a_117(D))[_73]> = _189; t.f:36:16: note: Found loop_vect sink: IMAGPART_EXPR <(*a_117(D))[_73]> = _189; t.f:36:16: note: Processing hybrid candidate : REALPART_EXPR <(*a_117(D))[_73]> = _188; t.f:36:16: note: Found loop_vect sink: REALPART_EXPR <(*a_117(D))[_73]> = _188; so there are not SLPed stores which makes the whole use-def chain of _189 and _188 loop vectorized (and hybrid if it has common pieces using SLP vectorization).