]> git.proxmox.com Git - mirror_qemu.git/blobdiff - disas.c
Merge remote-tracking branch 'remotes/berrange/tags/filemon-next-pull-request' into...
[mirror_qemu.git] / disas.c
diff --git a/disas.c b/disas.c
index d4ad1089efb3b4ae6639d25e0b177f431bc2b106..d9aa713a408abd81cf529db2eab741c82b30b9bb 100644 (file)
--- a/disas.c
+++ b/disas.c
@@ -522,6 +522,14 @@ void disas(FILE *out, void *code, unsigned long size)
 # ifdef _ARCH_PPC64
     s.info.cap_mode = CS_MODE_64;
 # endif
+#elif defined(__riscv) && defined(CONFIG_RISCV_DIS)
+#if defined(_ILP32) || (__riscv_xlen == 32)
+    print_insn = print_insn_riscv32;
+#elif defined(_LP64)
+    print_insn = print_insn_riscv64;
+#else
+#error unsupported RISC-V ABI
+#endif
 #elif defined(__aarch64__) && defined(CONFIG_ARM_A64_DIS)
     print_insn = print_insn_arm_a64;
     s.info.cap_arch = CS_ARCH_ARM64;
@@ -586,7 +594,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;
 }