https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108058
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |missed-optimization Target| |i?86-*-* Component|c++ |target Known to work| |4.7.3 Known to fail| |4.8.5 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- I'm not sure what you are complaining about - I see two returns with 64bit code generation as well. The code is vectorized and the epilogue is completely peeled. Are you complaining about code size here and thus the appearant missed cross-jumping of the epilogue? I think epilogue emission happens too late for this. GCC 4.7 is the last with vectorization and a single return point but it also doesn't peel the epilogue (4.8 does).