> No, but if there is none left why would you want to "fix" SRA?
Because I'm afraid this over-aligned type might leak into other places so we would probably be better off not creating it in the first place, all the more so that it is probably useless in most cases. For PR tree-opt/65310, why couldn't the vectorizer use the alignment of the pointed-to type of the addend of the MEM_REF, like for the alias set: # .MEM_8 = VDEF <.MEM_1(D)> # lhs access alignment 128+0 MEM[(struct LorentzVector *)res_7(D)] = SR.22_44; # .MEM_53 = VDEF <.MEM_8> # lhs access alignment 32+0 MEM[(struct LorentzVector *)res_7(D) + 4B] = SR.23_43; # .MEM_54 = VDEF <.MEM_53> # lhs access alignment 64+0 MEM[(struct LorentzVector *)res_7(D) + 8B] = SR.24_42; # .MEM_55 = VDEF <.MEM_54> # lhs access alignment 32+0 MEM[(struct LorentzVector *)res_7(D) + 12B] = SR.25_41; -- Eric Botcazou