https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97579

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
             Target|                            |x86_64-*-* i?86-*-*
                 CC|                            |marxin at gcc dot gnu.org

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
So we have used_vec_cond_exprs == 1 and a V16SI eq/ne compare with a
vector(16) <signed-boolean:1> HImode result.  We fall into

  gcc_assert (known_eq (GET_MODE_SIZE (mode), GET_MODE_SIZE (cmp_op_mode))
              && known_eq (GET_MODE_NUNITS (mode),
                           GET_MODE_NUNITS (cmp_op_mode)));

then but this is clearly a case where we _have_ to use the vec_cmp_expr
(because of the scalar mode).  So either simply remove the
used_vec_cond_exprs check or amend it with the negative of the above assert.

Reply via email to