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

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Started with r16-1706-gf8f7ace4f20829f2fad87662f5163c9b13427e39 but I think it
is a bug on several targets.
The problem is that when the last argument (i.e. the polynomial) is equal to
some earlier argument and that earlier argument is forced into a register (e.g.
through register_operand or nonimmediate_operand predicate), then
maybe_expand_insn will use that register as the last argument too if it
satisfies the last argument predicate.
And, the crc_optab and crc_rev_optab patterns on all targets use no predicate
for the last argument and still expect it is a CONST_INT.
So, we need to use "const_int_operand" predicate I think.

Reply via email to