On 2/9/22 16:48, Alistair Francis wrote:
Note that this only fixes the fault for memory regions. I/O and
non-existant regions will still trigger a load fault.
...
+void helper_atomic_check(CPURISCVState *env, target_ulong address,
+ int width, int mmu_idx)
+{
+probe_
From: Alistair Francis
If an atomic operation fails on RISC-V we want to generate a store/amo
fault and not a load fault.
Currently if we have no permissions to access the memory location the
atomic operation will sometimes fail with a load fault (depending on the
path taken in tcg/tcg-op.c) as