]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
tcg/riscv: Fix StoreStore barrier generation
authorRoman Artemev <roman.artemev@syntacore.com>
Wed, 11 Dec 2024 07:40:04 +0000 (07:40 +0000)
committerMichael Tokarev <mjt@tls.msk.ru>
Fri, 13 Dec 2024 12:54:32 +0000 (15:54 +0300)
On RISC-V to StoreStore barrier corresponds
`fence w, w` not `fence r, r`

Cc: qemu-stable@nongnu.org
Fixes: efbea94c76b ("tcg/riscv: Add slowpath load and store instructions")
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Denis Tomashev <denis.tomashev@syntacore.com>
Signed-off-by: Roman Artemev <roman.artemev@syntacore.com>
Message-ID: <e2f2131e294a49e79959d4fa9ec02cf4@syntacore.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
(cherry picked from commit b438362a142527b97b638b7f0f35ebe11911a8d5)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
tcg/riscv/tcg-target.c.inc

index 81a83e45b1564c327ef5d5814b31d4534908d9c7..e91a7aaf0e88865c970b1e1e7cf8b7b146ff2a33 100644 (file)
@@ -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);
 }