https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97502
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> --- The vector comparison optabs are: OPTAB_CD(vec_cmp_optab, "vec_cmp$a$b") OPTAB_CD(vec_cmpu_optab, "vec_cmpu$a$b") OPTAB_CD(vec_cmpeq_optab, "vec_cmpeq$a$b") therefore they need two modes in their names - the first one is the value mode and the second one is the mask mode. But then the backend defines named patterns like: vec_cmpeqv16qi rather than vec_cmpeqv16qiv16qi I'd expect.