On Sun, 2026-09-13 at 14:08 -1000, Richard Henderson wrote: > Signed-off-by: Richard Henderson <[email protected]>
Reviewed-by: Alistair Francis <[email protected]> Alistair > --- > tcg/riscv64/tcg-target.c.inc | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/tcg/riscv64/tcg-target.c.inc b/tcg/riscv64/tcg- > target.c.inc > index d0c9d8e9cd2..a5ed1e95722 100644 > --- a/tcg/riscv64/tcg-target.c.inc > +++ b/tcg/riscv64/tcg-target.c.inc > @@ -447,6 +447,7 @@ static tcg_insn_unit encode_r(RISCVInsn opc, > TCGReg rd, TCGReg rs1, TCGReg rs2) > > static tcg_insn_unit encode_imm12(tcg_target_long imm) > { > + tcg_debug_assert(imm == sextract32(imm, 0, 12)); > return (imm & 0xfff) << 20; > } > > @@ -462,6 +463,7 @@ static tcg_insn_unit > encode_simm12(tcg_target_long imm) > { > tcg_insn_unit ret = 0; > > + tcg_debug_assert(imm == sextract32(imm, 0, 12)); > ret |= (imm & 0xFE0) << 20; > ret |= (imm & 0x1F) << 7; > > @@ -498,7 +500,8 @@ static tcg_insn_unit encode_b(RISCVInsn opc, > TCGReg rs1, > > static tcg_insn_unit encode_uimm20(tcg_target_long imm) > { > - return imm & 0xfffff000; > + tcg_debug_assert(imm == (int32_t)imm && (imm & 0xfff) == 0); > + return imm & 0xfffff000u; > } > > static tcg_insn_unit encode_u(RISCVInsn opc, TCGReg rd, > tcg_target_long imm)
