tcg: Save/restore vecop_list around minmax fallback

Forgetting this asserts when tcg_gen_cmp_vec is called from
within tcg_gen_cmpsel_vec.

Fixes: 72b4c792c7a

Backports commit 69c918d2ef319ac63cd759c527debc2a2bdf3a0c from qemu
This commit is contained in:
Richard Henderson 2021-02-25 23:33:18 -05:00 committed by Lioncash
parent e5d9e0ed53
commit 55369d710c

View file

@ -659,7 +659,9 @@ static void do_minmax(TCGContext *s, unsigned vece, TCGv_vec r, TCGv_vec a,
TCGv_vec b, TCGOpcode opc, TCGCond cond)
{
if (!do_op3(s, vece, r, a, b, opc)) {
const TCGOpcode *hold_list = tcg_swap_vecop_list(s, NULL);
tcg_gen_cmpsel_vec(s, cond, vece, r, a, b, a, b);
tcg_swap_vecop_list(s, hold_list);
}
}