|
From: | tony.nguyen |
Subject: | [Qemu-ppc] [Qemu-devel] [PATCH v5 10/15] memory: Access MemoryRegion with MemOp semantics |
Date: | Fri, 26 Jul 2019 06:47:24 +0000 |
To convert interfaces of MemoryRegion access, MEMOP_SIZE and
SIZE_MEMOP no-op stubs were introduced to change syntax while keeping
the existing semantics.
Now with interfaces converted, we fill the stubs and use MemOp
semantics.
Signed-off-by: Tony Nguyen <address@hidden>
---
include/exec/memop.h | 5 ++---
include/exec/memory.h | 4 ++--
2 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/include/exec/memop.h b/include/exec/memop.h
index 09c8d20..f2847e8 100644
--- a/include/exec/memop.h
+++ b/include/exec/memop.h
@@ -106,8 +106,7 @@ typedef enum MemOp {
MO_SSIZE = MO_SIZE | MO_SIGN,
} MemOp;
-/* No-op while memory_region_dispatch_[read|write] is converted to MemOp */
-#define MEMOP_SIZE(op) (op) /* MemOp to size. */
-#define SIZE_MEMOP(ul) (ul) /* Size to MemOp. */
+#define MEMOP_SIZE(op) (1 << ((op) & MO_SIZE)) /* MemOp to size. */
+#define SIZE_MEMOP(ul) (ctzl(ul)) /* Size to MemOp. */
#endif
diff --git a/include/exec/memory.h b/include/exec/memory.h
index 0ea4843..975b86a 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -1732,7 +1732,7 @@ void mtree_info(bool flatview, bool dispatch_tree, bool owner);
* @mr: #MemoryRegion to access
* @addr: address within that region
* @pval: pointer to uint64_t which the data is written to
- * @op: size of the access in bytes
+ * @op: size, sign, and endianness of the memory operation
* @attrs: memory transaction attributes to use for the access
*/
MemTxResult memory_region_dispatch_read(MemoryRegion *mr,
@@ -1747,7 +1747,7 @@ MemTxResult memory_region_dispatch_read(MemoryRegion *mr,
* @mr: #MemoryRegion to access
* @addr: address within that region
* @data: data to write
- * @op: size of the access in bytes
+ * @op: size, sign, and endianness of the memory operation
* @attrs: memory transaction attributes to use for the access
*/
MemTxResult memory_region_dispatch_write(MemoryRegion *mr,
--
1.8.3.1
|
[Prev in Thread] | Current Thread | [Next in Thread] |