aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-12-14 13:30:49 +0000
committerPeter Maydell <peter.maydell@linaro.org>2018-12-14 13:30:49 +0000
commitf2c6abc8d5d7f04e807bf91430a26f5548997783 (patch)
tree67a9b07d7d69e240e8f4a5758e98d69bc4c3c5b9
parent3c8133f973767460f8e42c9e656f2f3ed703d00d (diff)
disas.c: Use address_space_read() to read memory
Currently disas.c reads physical memory using cpu_physical_memory_read(). This effectively hard-codes assuming that all CPUs have the same view of physical memory. Switch to address_space_read() instead, which lets us use the AddressSpace for the CPU we're disassembling for. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20181122172653.3413-2-peter.maydell@linaro.org
-rw-r--r--disas.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/disas.c b/disas.c
index 5325b7e6be..f9c517b358 100644
--- a/disas.c
+++ b/disas.c
@@ -588,7 +588,10 @@ static int
physical_read_memory(bfd_vma memaddr, bfd_byte *myaddr, int length,
struct disassemble_info *info)
{
- cpu_physical_memory_read(memaddr, myaddr, length);
+ CPUDebug *s = container_of(info, CPUDebug, info);
+
+ address_space_read(s->cpu->as, memaddr, MEMTXATTRS_UNSPECIFIED,
+ myaddr, length);
return 0;
}