On 7/14/21 3:55 PM, Taylor Simpson wrote:
+    target_ulong pc = env->gpr[HEX_REG_PC];
+    uint8_t width = env->mem_log_stores[slot_num].width;
+    target_ulong va = env->mem_log_stores[slot_num].va;
+
+    switch (width) {
      case 1:
-        put_user_u8(env->mem_log_stores[slot_num].data32,
-                    env->mem_log_stores[slot_num].va);
+        cpu_stb_data_ra(env, va, env->mem_log_stores[slot_num].data32, pc);

No, you need to pass the host return address, not the guest.
This should be

    uintptr_t ra = GETPC();


r~

Reply via email to