|
| From: | Richard Henderson |
| Subject: | Re: [PATCH v2 1/2] Hexagon (target/hexagon) remove put_user_*/get_user_* |
| Date: | Wed, 14 Jul 2021 17:59:49 -0700 |
| User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
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~
| [Prev in Thread] | Current Thread | [Next in Thread] |