On RISC-V to StoreStore barrier corresponds `fence w, w` not `fence r, r` Cc: qemu-sta...@nongnu.org Fixes: efbea94c76b ("tcg/riscv: Add slowpath load and store instructions") Reviewed-by: Richard Henderson <richard.hender...@linaro.org> Signed-off-by: Denis Tomashev <denis.tomas...@syntacore.com> Signed-off-by: Roman Artemev <roman.arte...@syntacore.com> Message-ID: <e2f2131e294a49e79959d4fa9ec02...@syntacore.com> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> (cherry picked from commit b438362a142527b97b638b7f0f35ebe11911a8d5) Signed-off-by: Michael Tokarev <m...@tls.msk.ru>
diff --git a/tcg/riscv/tcg-target.c.inc b/tcg/riscv/tcg-target.c.inc index 81a83e45b1..e91a7aaf0e 100644 --- a/tcg/riscv/tcg-target.c.inc +++ b/tcg/riscv/tcg-target.c.inc @@ -838,7 +838,7 @@ static void tcg_out_mb(TCGContext *s, TCGArg a0) insn |= 0x02100000; } if (a0 & TCG_MO_ST_ST) { - insn |= 0x02200000; + insn |= 0x01100000; } tcg_out32(s, insn); } -- 2.39.5