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

--- Comment #6 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
> I have just noticed this which seems curious. Is the 39 -> 40 combine really
> a valid transformation? It seems we've lost the sign extension and we're
> just putting a 32-bit value into a 64-bit register without trying to clear
> the upper bits anymore?

Yes, for WORD_REGISTER_OPERATIONS architectures the combiner can do things like
that, although there might be bugs lurking of course.

Reply via email to