https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120137
Li Pan <pan2.li at intel dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |pan2.li at intel dot com --- Comment #1 from Li Pan <pan2.li at intel dot com> --- Reproduced from today's upstream, it comes from here: inline poly_wide_int rtx_vector_builder::step (rtx elt1, rtx elt2) const { return (wi::to_poly_wide (elt2, GET_MODE_INNER (m_mode)) - wi::to_poly_wide (elt1, GET_MODE_INNER (m_mode))); } the elt1 is -136 and while the m_mode is QImode, it exceeds the range of QImode -128-127 and then triggers the assertion. Maybe we need to add some check from stepped_sequence_p before goes to step().