Hexagon (target/hexagon) remove put_user_*/get_user_*

Replace put_user_* with cpu_st*_data_ra
Replace get_user_* with cpu_ld*_data_ra

Suggested-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: <1626384156-6248-2-git-send-email-tsimpson@quicinc.com>
This commit is contained in:
Taylor Simpson 2021-07-13 10:51:33 -05:00
parent 7457b407ed
commit 4699a92779
1 changed files with 18 additions and 21 deletions

View File

@ -17,6 +17,7 @@
#include "qemu/osdep.h" #include "qemu/osdep.h"
#include "qemu.h" #include "qemu.h"
#include "exec/cpu_ldst.h"
#include "exec/helper-proto.h" #include "exec/helper-proto.h"
#include "fpu/softfloat.h" #include "fpu/softfloat.h"
#include "cpu.h" #include "cpu.h"
@ -140,22 +141,22 @@ void HELPER(debug_check_store_width)(CPUHexagonState *env, int slot, int check)
void HELPER(commit_store)(CPUHexagonState *env, int slot_num) void HELPER(commit_store)(CPUHexagonState *env, int slot_num)
{ {
switch (env->mem_log_stores[slot_num].width) { uintptr_t ra = GETPC();
uint8_t width = env->mem_log_stores[slot_num].width;
target_ulong va = env->mem_log_stores[slot_num].va;
switch (width) {
case 1: case 1:
put_user_u8(env->mem_log_stores[slot_num].data32, cpu_stb_data_ra(env, va, env->mem_log_stores[slot_num].data32, ra);
env->mem_log_stores[slot_num].va);
break; break;
case 2: case 2:
put_user_u16(env->mem_log_stores[slot_num].data32, cpu_stw_data_ra(env, va, env->mem_log_stores[slot_num].data32, ra);
env->mem_log_stores[slot_num].va);
break; break;
case 4: case 4:
put_user_u32(env->mem_log_stores[slot_num].data32, cpu_stl_data_ra(env, va, env->mem_log_stores[slot_num].data32, ra);
env->mem_log_stores[slot_num].va);
break; break;
case 8: case 8:
put_user_u64(env->mem_log_stores[slot_num].data64, cpu_stq_data_ra(env, va, env->mem_log_stores[slot_num].data64, ra);
env->mem_log_stores[slot_num].va);
break; break;
default: default:
g_assert_not_reached(); g_assert_not_reached();
@ -393,37 +394,33 @@ static void check_noshuf(CPUHexagonState *env, uint32_t slot)
static uint8_t mem_load1(CPUHexagonState *env, uint32_t slot, static uint8_t mem_load1(CPUHexagonState *env, uint32_t slot,
target_ulong vaddr) target_ulong vaddr)
{ {
uint8_t retval; uintptr_t ra = GETPC();
check_noshuf(env, slot); check_noshuf(env, slot);
get_user_u8(retval, vaddr); return cpu_ldub_data_ra(env, vaddr, ra);
return retval;
} }
static uint16_t mem_load2(CPUHexagonState *env, uint32_t slot, static uint16_t mem_load2(CPUHexagonState *env, uint32_t slot,
target_ulong vaddr) target_ulong vaddr)
{ {
uint16_t retval; uintptr_t ra = GETPC();
check_noshuf(env, slot); check_noshuf(env, slot);
get_user_u16(retval, vaddr); return cpu_lduw_data_ra(env, vaddr, ra);
return retval;
} }
static uint32_t mem_load4(CPUHexagonState *env, uint32_t slot, static uint32_t mem_load4(CPUHexagonState *env, uint32_t slot,
target_ulong vaddr) target_ulong vaddr)
{ {
uint32_t retval; uintptr_t ra = GETPC();
check_noshuf(env, slot); check_noshuf(env, slot);
get_user_u32(retval, vaddr); return cpu_ldl_data_ra(env, vaddr, ra);
return retval;
} }
static uint64_t mem_load8(CPUHexagonState *env, uint32_t slot, static uint64_t mem_load8(CPUHexagonState *env, uint32_t slot,
target_ulong vaddr) target_ulong vaddr)
{ {
uint64_t retval; uintptr_t ra = GETPC();
check_noshuf(env, slot); check_noshuf(env, slot);
get_user_u64(retval, vaddr); return cpu_ldq_data_ra(env, vaddr, ra);
return retval;
} }
/* Floating point */ /* Floating point */