Martin Liška <mli...@suse.cz> writes:
> diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c
> index d50b811d863..1bd251ea8e2 100644
> --- a/gcc/config/i386/i386-expand.c
> +++ b/gcc/config/i386/i386-expand.c
> @@ -19780,8 +19780,7 @@ ix86_expand_sse2_mulvxdi3 (rtx op0, rtx op1, rtx op2)
>        emit_insn (gen_vec_widen_umult_even_v4si (t5, 
>                                       gen_lowpart (V4SImode, op1),
>                                       gen_lowpart (V4SImode, op2)));
> -      op0 = expand_binop (mode, add_optab, t5, t4, op0, 1, OPTAB_DIRECT);
> -
> +      expand_binop (mode, add_optab, t5, t4, op0, 1, OPTAB_DIRECT);
>      }
>    else
>      {

This means that nothing uses the expanded value.  It looks like the
call was meant to be force_expand_binop instead, so that the expansion
always goes to op0.

Richard

Reply via email to