I converted MSA opcodes to decodetree. To keep the series small I split it in 2, this is the non-decodetree specific patches (so non-decodetree experts can review it ;) ). First we stop using env->insn_flags to check for MSAi presence, then we restrict TCG functions to DisasContext*. Based-on: <20201130102228.2395100-1-f4bug@xxxxxxxxx> "target/mips: Allow executing MSA instructions on Loongson-3A4000" Philippe Mathieu-Daudé (9): target/mips: Introduce ase_msa_available() helper target/mips: Simplify msa_reset() target/mips: Use CP0_Config3 to set MIPS_HFLAG_MSA target/mips: Simplify MSA TCG logic target/mips: Remove now unused ASE_MSA definition target/mips: Alias MSA vector registers on FPU scalar registers target/mips: Extract msa_translate_init() from mips_tcg_init() target/mips: Remove CPUMIPSState* argument from gen_msa*() methods target/mips: Explode gen_msa_branch() as gen_msa_BxZ_V/BxZ() target/mips/internal.h | 8 +- target/mips/mips-defs.h | 1 - target/mips/kvm.c | 12 +- target/mips/translate.c | 206 ++++++++++++++++++------------- target/mips/translate_init.c.inc | 12 +- 5 files changed, 138 insertions(+), 101 deletions(-) -- 2.26.2