[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 3/7] target/s390x: Use void* for haddr in S390Access
From: |
Richard Henderson |
Subject: |
[PATCH 3/7] target/s390x: Use void* for haddr in S390Access |
Date: |
Mon, 9 Jan 2023 12:18:52 -0800 |
The interface from probe_access_flags is void*, and matching
that will be helpful. We already rely on the gcc extension
for byte arithmetic on void*.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/s390x/tcg/mem_helper.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/target/s390x/tcg/mem_helper.c b/target/s390x/tcg/mem_helper.c
index 6a50189ef0..0f2830f87c 100644
--- a/target/s390x/tcg/mem_helper.c
+++ b/target/s390x/tcg/mem_helper.c
@@ -114,8 +114,8 @@ static inline void cpu_stsize_data_ra(CPUS390XState *env,
uint64_t addr,
typedef struct S390Access {
target_ulong vaddr1;
target_ulong vaddr2;
- char *haddr1;
- char *haddr2;
+ void *haddr1;
+ void *haddr2;
uint16_t size1;
uint16_t size2;
/*
@@ -268,8 +268,9 @@ static void access_memset(CPUS390XState *env, S390Access
*desta,
desta->mmu_idx, ra);
}
-static uint8_t do_access_get_byte(CPUS390XState *env, vaddr vaddr, char
**haddr,
- int offset, int mmu_idx, uintptr_t ra)
+static uint8_t do_access_get_byte(CPUS390XState *env, vaddr vaddr,
+ void **haddr, int offset,
+ int mmu_idx, uintptr_t ra)
{
#ifdef CONFIG_USER_ONLY
return ldub_p(*haddr + offset);
@@ -301,7 +302,7 @@ static uint8_t access_get_byte(CPUS390XState *env,
S390Access *access,
offset - access->size1, access->mmu_idx, ra);
}
-static void do_access_set_byte(CPUS390XState *env, vaddr vaddr, char **haddr,
+static void do_access_set_byte(CPUS390XState *env, vaddr vaddr, void **haddr,
int offset, uint8_t byte, int mmu_idx,
uintptr_t ra)
{
--
2.34.1
- [PATCH 2/7] target/s390x: Pass S390Access pointer into access_prepare, (continued)
- [PATCH 2/7] target/s390x: Pass S390Access pointer into access_prepare, Richard Henderson, 2023/01/09
- [PATCH 1/7] target/s390x: Fix s390_probe_access for user-only, Richard Henderson, 2023/01/09
- [PATCH 5/7] target/s390x: Remove TLB_NOTDIRTY workarounds, Richard Henderson, 2023/01/09
- [PATCH 4/7] target/s390x: Tidy access_prepare_nf, Richard Henderson, 2023/01/09
- [PATCH 7/7] target/s390x: Hoist some computation in access_memmove, Richard Henderson, 2023/01/09
- [PATCH 3/7] target/s390x: Use void* for haddr in S390Access,
Richard Henderson <=
- [PATCH 6/7] target/s390x: Inline do_access_{get,set}_byte, Richard Henderson, 2023/01/09