From: Paolo Bonzini Date: Fri, 24 May 2013 10:54:01 +0000 (+0200) Subject: memory: add big endian support to access_with_adjusted_size X-Git-Tag: qemu-xen-4.4.0-rc1~6^2~343^2~5 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=08521e28c7e6e8cc1f53424a0f845f58d2ed9546;p=qemu-upstream-4.5-testing.git memory: add big endian support to access_with_adjusted_size This will be used to split 8-byte access down to two four-byte accesses. Reviewed-by: Richard Henderson Signed-off-by: Paolo Bonzini --- diff --git a/memory.c b/memory.c index c72f56d47..679bd8d8b 100644 --- a/memory.c +++ b/memory.c @@ -362,8 +362,12 @@ static void access_with_adjusted_size(hwaddr addr, access_size = MAX(MIN(size, access_size_max), access_size_min); access_mask = -1ULL >> (64 - access_size * 8); for (i = 0; i < size; i += access_size) { - /* FIXME: big-endian support */ +#ifdef TARGET_WORDS_BIGENDIAN + access(opaque, addr + i, value, access_size, + (size - access_size - i) * 8, access_mask); +#else access(opaque, addr + i, value, access_size, i * 8, access_mask); +#endif } }