On Tue, 21 Nov 2017, Richard Henderson wrote:

> Signed-off-by: Richard Henderson <richard.hender...@linaro.org>

> +void tcg_gen_mul_vec(unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec b)
> +{
> +    TCGTemp *rt = tcgv_vec_temp(r);
> +    TCGTemp *at = tcgv_vec_temp(a);
> +    TCGTemp *bt = tcgv_vec_temp(b);
> +    TCGArg ri = temp_arg(rt);
> +    TCGArg ai = temp_arg(at);
> +    TCGArg bi = temp_arg(bt);
> +    TCGType type = rt->base_type;
> +    int can;
> +
> +    tcg_debug_assert(at->base_type == type);
> +    tcg_debug_assert(bt->base_type == type);
> +    can = tcg_can_emit_vec_op(INDEX_op_cmp_vec, type, vece);

Should be INDEX_op_mul_vec in the line above.

> +    if (can > 0) {
> +        vec_gen_3(INDEX_op_mul_vec, type, vece, ri, ai, bi);
> +    } else {
> +        tcg_debug_assert(can < 0);
> +        tcg_expand_vec_op(INDEX_op_mul_vec, type, vece, ri, ai, bi);
> +    }
> +}

-- 
Kirill

Reply via email to