https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108787
Segher Boessenkool <segher at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2023-02-14 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #5 from Segher Boessenkool <segher at gcc dot gnu.org> --- The maddhd insn does a sign-extend of the addend as well, so simply adding the high part of it is not enough. I don't see how to solve this with any machine code using the new madd* insns that is at least as good code as the mulld;mulhd;addc;adde we would otherwise generate. We should still have machine patterns for the insn we have (it can be used if operands[3] here is only one machine word for example), but we shouldn't have a define_expand for maddditi4? (For umaddditi4 we can of course, and that is even useful if it results in better generated code).