https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94261
--- Comment #5 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- (In reply to Richard Biener from comment #3) > (In reply to Richard Biener from comment #2) > > when placing gcc_unreachable () at the swapping place and most testcases > > still pass when removing the IL operand swapping, only vect-cselim-1.c > > runfails (investigating). > > Ah, SLP ultimately fails here so the scalar IL is broken by the operation > code adjustment. In the end we should be able to avoid doing tree code > adjustments as well since we're swapping to make the code the same > as the first stmts code and we only ever look at the first scalar stmt > during SLP code-gen/analysis. Yeah, started wondering about that later too... > So, it appears to work to comment _all_ of the code in > vect_get_and_check_slp_defs (including the reduc-idx adjustment). > > But again, test coverage is probably bad. Would be great if it works. Will give it a spin later on SVE, although I guess in some ways that probably exercises SLP even less (at least in length-agnostic mode).