On Thu, Sep 8, 2022 at 9:45 AM Richard Henderson < richard.hender...@linaro.org> wrote:
> On 9/6/22 13:22, Christoph Muellner wrote: > > @@ -732,6 +733,7 @@ static int ex_rvc_shifti(DisasContext *ctx, int imm) > > #include "decode-xtheadbs.c.inc" > > #include "decode-xtheadcmo.c.inc" > > #include "decode-xtheadcondmov.c.inc" > > +#include "decode-xtheadfmemidx.c.inc" > > #include "decode-xtheadmac.c.inc" > > #include "decode-xtheadmemidx.c.inc" > > #include "decode-xtheadmempair.c.inc" > > @@ -1061,6 +1063,7 @@ static void decode_opc(CPURISCVState *env, > DisasContext *ctx, uint16_t opcode) > > { has_xtheadbs_p, decode_xtheadbs }, > > { has_xtheadcmo_p, decode_xtheadcmo }, > > { has_xtheadcondmov_p, decode_xtheadcondmov }, > > + { has_xtheadfmemidx_p, decode_xtheadfmemidx }, > > { has_xtheadmac_p, decode_xtheadmac }, > > { has_xtheadmemidx_p, decode_xtheadmemidx }, > > { has_xtheadmempair_p, decode_xtheadmempair }, > > I think you should have a single decoder for all of the xthread > extensions, and each > translate function should test for the individual extension. You know > up-front that these > extensions do not conflict. > > Ok, I will restructure the series and use a single decoder. Thanks! > > r~ >