https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91020
--- Comment #3 from Martin Jambor <jamborm at gcc dot gnu.org> --- Created attachment 46543 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46543&action=edit Proof-of-concept patch This is a proof of concept (and only mildly tested) patch which leads to successful vectorization of the second (C) testcase. The main downside is that it probably makes SRA code even less readable than it is now as it creates slightly unnatural special parts of the access tree which do not adhere to normal rules of the data structure. And that is even without attempting to address the issue in comment #2, which will add more special case handling and will probably require some heuristics too. Of course, even that will not help if the aggregates in question are addressable.