https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98563
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I'm afraid no. The vectorization can handle addresses into the simd arrays, but right now only if it accesses the whole element, i.e. when we can turn the simd array into a vector register (or set thereof) that hold the variable. In this case that is not the case, as in the end it uses the real and imag parts separately. So, either it can be handled in SRA, or we'd need to teach the vectorizer to permute those fur us.