https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79826
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|tree-optimization |middle-end Summary|Unnecessary spills in |Unnecessary spills in |vectorised loop version |vectorised loop version due | |to register pressure and | |scheduler not knowing the | |load/stores don't conflict --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- This is a scheduling issue. the vectorizer decides to create all of the loads at the begining of the bb and the stores at the middle of the bb. But nothing is able to schedule them to reduce the register pressure.