summaryrefslogtreecommitdiff
path: root/include/exec
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2015-12-09 10:18:57 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2015-12-17 17:33:49 +0100
commita203ac702e0720135fac8b1f2061d119814c1798 (patch)
treea4c4eddcef99ec509ca7c990caae480fa10b72b5 /include/exec
parenteb7eeb88628074207dd611472e712af775985e73 (diff)
downloadqemu-a203ac702e0720135fac8b1f2061d119814c1798.zip
memory: extract first iteration of address_space_read and address_space_write
We want to inline the case where there is only one iteration, because then the compiler can also inline the memcpy. As a start, extract everything after the first address_space_translate call. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include/exec')
-rw-r--r--include/exec/memory.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/exec/memory.h b/include/exec/memory.h
index 24b7cba737..3680d6a135 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -1366,6 +1366,12 @@ void address_space_unmap(AddressSpace *as, void *buffer, hwaddr len,
int is_write, hwaddr access_len);
+/* Internal functions, part of the implementation of address_space_read. */
+MemTxResult address_space_read_continue(AddressSpace *as, hwaddr addr,
+ MemTxAttrs attrs, uint8_t *buf,
+ int len, hwaddr addr1, hwaddr l,
+ MemoryRegion *mr);
+
#endif
#endif