Re: [Qemu-devel] [PATCH 6/9] memory: Delete devend_memop

2019-08-24 Thread Richard Henderson
On 8/23/19 12:42 PM, Tony Nguyen wrote:
> device_endian has been made redundant by MemOp.
> 
> Signed-off-by: Tony Nguyen 
> ---
>  include/exec/memory.h |  3 ---
>  memory.c  | 19 +--
>  memory_ldst.inc.c | 18 ++
>  3 files changed, 7 insertions(+), 33 deletions(-)

Reviewed-by: Richard Henderson 


r~



[Qemu-devel] [PATCH 6/9] memory: Delete devend_memop

2019-08-23 Thread Tony Nguyen
device_endian has been made redundant by MemOp.

Signed-off-by: Tony Nguyen 
---
 include/exec/memory.h |  3 ---
 memory.c  | 19 +--
 memory_ldst.inc.c | 18 ++
 3 files changed, 7 insertions(+), 33 deletions(-)

diff --git a/include/exec/memory.h b/include/exec/memory.h
index 1fa7e03707..ff80465ac1 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -2211,9 +2211,6 @@ address_space_write_cached(MemoryRegionCache *cache, 
hwaddr addr,
 }
 }
 
-/* MemOp to MemOp.  */
-MemOp devend_memop(MemOp end);
-
 #endif
 
 #endif
diff --git a/memory.c b/memory.c
index ee2bef7b1e..d78d6e46db 100644
--- a/memory.c
+++ b/memory.c
@@ -354,7 +354,7 @@ static bool memory_region_big_endian(MemoryRegion *mr)
 
 static void adjust_endianness(MemoryRegion *mr, uint64_t *data, MemOp op)
 {
-if ((op & MO_BSWAP) != devend_memop(mr->ops->endianness)) {
+if ((op & MO_BSWAP) != mr->ops->endianness) {
 switch (op & MO_SIZE) {
 case MO_8:
 break;
@@ -3271,20 +3271,3 @@ static void memory_register_types(void)
 }
 
 type_init(memory_register_types)
-
-MemOp devend_memop(MemOp end)
-{
-static MemOp conv[] = {
-[MO_LE] = MO_LE,
-[MO_BE] = MO_BE,
-[MO_TE] = MO_TE,
-[DEVICE_HOST_ENDIAN] = 0,
-};
-switch (end) {
-case MO_LE:
-case MO_BE:
-return conv[end];
-default:
-g_assert_not_reached();
-}
-}
diff --git a/memory_ldst.inc.c b/memory_ldst.inc.c
index dd1e02d685..028227f52f 100644
--- a/memory_ldst.inc.c
+++ b/memory_ldst.inc.c
@@ -37,8 +37,7 @@ static inline uint32_t glue(address_space_ldl_internal, 
SUFFIX)(ARG1_DECL,
 release_lock |= prepare_mmio_access(mr);
 
 /* I/O case */
-r = memory_region_dispatch_read(mr, addr1, &val,
-MO_32 | devend_memop(endian), attrs);
+r = memory_region_dispatch_read(mr, addr1, &val, MO_32 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
@@ -104,8 +103,7 @@ static inline uint64_t glue(address_space_ldq_internal, 
SUFFIX)(ARG1_DECL,
 release_lock |= prepare_mmio_access(mr);
 
 /* I/O case */
-r = memory_region_dispatch_read(mr, addr1, &val,
-MO_64 | devend_memop(endian), attrs);
+r = memory_region_dispatch_read(mr, addr1, &val, MO_64 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
@@ -205,8 +203,7 @@ static inline uint32_t glue(address_space_lduw_internal, 
SUFFIX)(ARG1_DECL,
 release_lock |= prepare_mmio_access(mr);
 
 /* I/O case */
-r = memory_region_dispatch_read(mr, addr1, &val,
-MO_16 | devend_memop(endian), attrs);
+r = memory_region_dispatch_read(mr, addr1, &val, MO_16 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
@@ -309,8 +306,7 @@ static inline void glue(address_space_stl_internal, 
SUFFIX)(ARG1_DECL,
 mr = TRANSLATE(addr, &addr1, &l, true, attrs);
 if (l < 4 || !memory_access_is_direct(mr, true)) {
 release_lock |= prepare_mmio_access(mr);
-r = memory_region_dispatch_write(mr, addr1, val,
- MO_32 | devend_memop(endian), attrs);
+r = memory_region_dispatch_write(mr, addr1, val, MO_32 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
@@ -405,8 +401,7 @@ static inline void glue(address_space_stw_internal, 
SUFFIX)(ARG1_DECL,
 mr = TRANSLATE(addr, &addr1, &l, true, attrs);
 if (l < 2 || !memory_access_is_direct(mr, true)) {
 release_lock |= prepare_mmio_access(mr);
-r = memory_region_dispatch_write(mr, addr1, val,
- MO_16 | devend_memop(endian), attrs);
+r = memory_region_dispatch_write(mr, addr1, val, MO_16 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
@@ -469,8 +464,7 @@ static void glue(address_space_stq_internal, 
SUFFIX)(ARG1_DECL,
 mr = TRANSLATE(addr, &addr1, &l, true, attrs);
 if (l < 8 || !memory_access_is_direct(mr, true)) {
 release_lock |= prepare_mmio_access(mr);
-r = memory_region_dispatch_write(mr, addr1, val,
- MO_64 | devend_memop(endian), attrs);
+r = memory_region_dispatch_write(mr, addr1, val, MO_64 | endian, 
attrs);
 } else {
 /* RAM case */
 ptr = qemu_map_ram_ptr(mr->ram_block, addr1);
-- 
2.23.0