From 08521e28c7e6e8cc1f53424a0f845f58d2ed9546 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Fri, 24 May 2013 12:54:01 +0200 Subject: 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 --- memory.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'memory.c') diff --git a/memory.c b/memory.c index c72f56d472..679bd8d8b0 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 } } -- cgit v1.2.1