From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: Christian Borntraeger <borntraeger@de.ibm.com>,
Alexander Graf <agraf@suse.de>
Subject: [Qemu-devel] [PATCH v2 0/8] Support the Capstone disassembler
Date: Tue, 19 Sep 2017 10:03:05 -0500 [thread overview]
Message-ID: <20170919150313.10833-1-richard.henderson@linaro.org> (raw)
Changes since v1:
* Don't silently ignore unknown insns.
* Don't copy memory when dumping host insns.
* More properly handle dumping from the monitor.
* Drop enabling for s390x, sparc, mips.
The s390x and sparc support in capstone is pretty poor. It seems
to only handle userland instructions -- at least that's the impression
I get from the hordes of insns rendered as ".byte" within the first
few TB of booting each machine. I dropped the mips patch simply
because there are too many capstone options and it probably needs
more testing than I've given it.
If there are any IBM folk paying attention, it would be awesome if
some time could be found somewhere to improve capstone for zSeries.
You're in the same boat that i386 is in -- namely that our ancient
binutils gplv2 code is neigh useless for modern systems. It would
be really really nice to have a better disassembler for qemu.
r~
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Alexander Graf <agraf@suse.de>
Richard Henderson (8):
target/i386: Convert to disas_set_info hook
target/ppc: Convert to disas_set_info hook
disas: Remove unused flags arguments
disas: Support the Capstone disassembler library
i386: Support Capstone in disas_set_info
arm: Support Capstone in disas_set_info
ppc: Support Capstone in disas_set_info
disas: Remove monitor_disas_is_physical
include/disas/bfd.h | 4 +
include/disas/capstone.h | 38 ++++++
include/disas/disas.h | 4 +-
include/exec/log.h | 4 +-
disas.c | 310 ++++++++++++++++++++++++++++++------------
monitor.c | 29 +---
target/alpha/translate.c | 2 +-
target/arm/cpu.c | 21 ++-
target/arm/translate-a64.c | 3 +-
target/arm/translate.c | 3 +-
target/cris/translate.c | 3 +-
target/hppa/translate.c | 2 +-
target/i386/cpu.c | 19 +++
target/i386/translate.c | 8 +-
target/lm32/translate.c | 2 +-
target/m68k/translate.c | 2 +-
target/microblaze/translate.c | 2 +-
target/mips/translate.c | 2 +-
target/nios2/translate.c | 2 +-
target/openrisc/translate.c | 2 +-
target/ppc/translate.c | 5 +-
target/ppc/translate_init.c | 27 ++++
target/s390x/translate.c | 2 +-
target/sh4/translate.c | 2 +-
target/sparc/translate.c | 2 +-
target/tricore/translate.c | 2 +-
target/unicore32/translate.c | 2 +-
target/xtensa/translate.c | 2 +-
configure | 26 ++++
29 files changed, 380 insertions(+), 152 deletions(-)
create mode 100644 include/disas/capstone.h
--
2.13.5
next reply other threads:[~2017-09-19 15:03 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-19 15:03 Richard Henderson [this message]
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 1/8] target/i386: Convert to disas_set_info hook Richard Henderson
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 2/8] target/ppc: " Richard Henderson
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 3/8] disas: Remove unused flags arguments Richard Henderson
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 4/8] disas: Support the Capstone disassembler library Richard Henderson
2017-09-20 11:17 ` Alex Bennée
2017-09-20 13:04 ` Richard Henderson
2017-09-20 21:06 ` Richard Henderson
2017-09-26 18:20 ` Richard Henderson
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 5/8] i386: Support Capstone in disas_set_info Richard Henderson
2017-09-21 14:49 ` Alex Bennée
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 6/8] arm: " Richard Henderson
2017-09-26 0:08 ` Alex Bennée
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 7/8] ppc: " Richard Henderson
2017-09-19 15:03 ` [Qemu-devel] [PATCH v2 8/8] disas: Remove monitor_disas_is_physical Richard Henderson
2017-09-26 13:45 ` Alex Bennée
2017-09-19 16:06 ` [Qemu-devel] [PATCH v2 0/8] Support the Capstone disassembler no-reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170919150313.10833-1-richard.henderson@linaro.org \
--to=richard.henderson@linaro.org \
--cc=agraf@suse.de \
--cc=borntraeger@de.ibm.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).