On on Tue, 21 Jul 2026 16:49:55 +0200, Jakub Jelinek <[email protected]> wrote:
> On Wed, Jun 10, 2026 at 07:38:13PM +0530, [email protected] wrote:
>> static const atomic_op_lowering atomic_op_table[] = {
>> - { IFN_ATOMIC_FETCH_MINMAX, lower_minmax_call },
>> + {IFN_ATOMIC_FETCH_MINMAX, can_expand_atomic_minmax, lower_minmax_call},
>
> I think the normal coding style is to have spaces after { and before }.
Done.
>
>> + /* For signed types, explicitly sign-extend the result. */
>> + if (is_signed)
>> + {
>> + rtx extended = gen_reg_rtx (word_mode);
>> + emit_insn (
>> + gen_rtx_SET (extended, gen_rtx_SIGN_EXTEND (word_mode, result)));
>
> This looks wrong. You shouldn't assume sign extension is
> (set (reg:mode) (sign_extend:mode (reg)))
>
> Plus the formatting is bad, ( shouldn't come at the end of line if possible.
>
> Why doesn't convert_move DTRT?
Right, this was enough. I removed the additional sign_extend.
>
> Jakub