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

--- Comment #5 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Matthias Klose from comment #4)
> Uros proposed patch lets the build succeed.

FTR, the problem was in umuldi3_highpart expander, which did:

   if (REG_P (operands[2]))
     operands[2] = gen_rtx_ZERO_EXTEND (TImode, operands[2]);

on register_operand predicate, which also allows SUBREG RTX. So, subregs were
emitted without ZERO_EXTEND RTX.

But nowadays we have UMUL_HIGHPART that allows us to fix this issue while also
simplifying the instruction RTX.

Matthias, can you please run the regression check - The fix is kind of obvious,
but just to be sure.

Reply via email to