https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91526
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|c |middle-end Severity|normal |enhancement --- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> --- here is an example where the C++ front-end produces IR which causes the opposite effect and the C front-end is better: struct Vec { float v[8]; }; struct Vec multiply(const struct Vec* v1, const struct Vec* v2) { struct Vec result; struct Vec result1, result2; for(unsigned i = 0; i < 8; ++i) result.v[i] = v1->v[i] * v2->v[i]; result1 = result; result2 = result; return result2; }