https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125215
--- Comment #6 from Robin Dapp <rdapp at gcc dot gnu.org> --- > I'll send this patch to the mailing list after you check it out. (In reply to Zhongyao Chen from comment #5) > (In reply to Robin Dapp from comment #3) > > Thanks for the analysis. I thought we had fixed this already, but > > apparently not :/ I can take this, or do you want to continue? > > I'll send this patch to the mailing list after you check it out. Thanks. While your solution looks correct to me, I'm not entirely convinced we should go for it. The fallback merge version is shorter and from a quick look even the critical-path length might be lower (I think it was before as well so not like your patch made it worse). I was already not really happy with this hi/lo approach before, but the additional add makes it even worse IMHO. I'm struggling to imagine a uarch where fixed the non-merge version would be better. Maybe it's time to get rid of it altogether?
