https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112636
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |14.0 CC| |hubicka at gcc dot gnu.org Keywords| |ice-on-valid-code, | |missed-optimization Priority|P3 |P1 Version|unknown |14.0 Status|UNCONFIRMED |NEW Last reconfirmed| |2023-11-20 Summary|ICE on valid code at -O1 |[14 Regression] ICE on |(but not at -O{0,s,2,3}) |valid code at -O1 (but not |with "-ftree-vectorize": in |at -O{0,s,2,3}) with |adjust_loop_info_after_peel |"-ftree-vectorize": in |ing, at |adjust_loop_info_after_peel |tree-ssa-loop-ivcanon.cc:10 |ing, at |69 |tree-ssa-loop-ivcanon.cc:10 | |69 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. if (wi::leu_p (npeel, loop->nb_iterations_upper_bound)) loop->nb_iterations_upper_bound -= npeel; else { /* Peeling maximal number of iterations or more makes no sense and is a bug. We should peel completely. */ gcc_unreachable (); so we're asking to adjust for peeling of 1 iteration with an upper bound of iterations of zero. We derive this limit from the array size of a[]. Caused by Honzas loop header copying changes.