On 11/18/20 12:29 AM, frank.ch...@sifive.com wrote: > +static bool trans_slo(DisasContext *ctx, arg_slo *a) > +{ > + REQUIRE_EXT(ctx, RVB); > + return gen_arith(ctx, a, &gen_slo); > +} > + > +static bool trans_sloi(DisasContext *ctx, arg_sloi *a) > +{ > + REQUIRE_EXT(ctx, RVB); > + > + if (a->shamt >= TARGET_LONG_BITS) { > + return false; > + } > + > + return gen_arith_shamt_tl(ctx, a, &gen_slo); > +} > + > +static bool trans_sro(DisasContext *ctx, arg_sro *a) > +{ > + REQUIRE_EXT(ctx, RVB); > + return gen_arith(ctx, a, &gen_sro); > +} > + > +static bool trans_sroi(DisasContext *ctx, arg_sroi *a) > +{ > + REQUIRE_EXT(ctx, RVB); > + > + if (a->shamt >= TARGET_LONG_BITS) { > + return false; > + } > + > + return gen_arith_shamt_tl(ctx, a, &gen_sro); > +}
Use the same gen_shift family of functions discussed vs patch 8. r~