|
From: | Philippe Mathieu-Daudé |
Subject: | Re: [RFC PATCH 0/3] Remove some of the old libopcode based disassemblers |
Date: | Mon, 9 May 2022 15:42:06 +0200 |
User-agent: | Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.9.0 |
On 9/5/22 15:18, Thomas Huth wrote:
On 09/05/2022 14.20, Philippe Mathieu-Daudé wrote:On 12/4/22 18:58, Thomas Huth wrote:Many of the disassemblers in the disas folder are based on old versions from the GNU tools (libopcode, GDB, ...) that were still licensed under the GPL v2. The GNU tools switched to GPL v3 at one point in time, so QEMU is stuck with the old versions, i.e. these files did not see much updates for new processors anymore. But for most architectures, we're preferring the Capstone disassembler now anyway, so the old libopcode disassemblers are also hardly used anymore. I'm not 100% sure (thus this is marked as RFC), but I think we could simply drop the old disassemblers nowadays, and hardly anybody would miss them, since we now always embed capstone as a submodule anyway. Or is there still an advantage in keeping these old files around? This RFC series tackles with s390, arm (32-bit) and i386 ... I wanted to get some feedback first, but if we agree that these can be removed, the sparc, mips and ppc disassemblers likely can be removed, too. (I think we should keep m68k.c since Capstone does not have support for Coldfire CPUs yet). Thomas Huth (3): disas: Remove old libopcode s390 disassembler disas: Remove old libopcode arm disassembler disas: Remove old libopcode i386 disassemblerdisas/arm.c | 4012 ----------------------- disas/i386.c | 6771 --------------------------------------- disas/s390.c | 1892 -----------10 files changed, 12700 deletions(-)o_O Nice! Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>Thanks, just a little bit too late - it's in my current pull request already :-)
NP, trying to catch up.
By the way, what about MIPS? Could MIPS be switched to Capstone, too, so that we could finally remove disas/mips.c ? (We're not using capstone there yet, and MIPS has so many flavours, big and little endian, 32- and 64-bit ... so that I'm unsure whether there was a reason for not using Capstone there, or whether it just hasn't been tried out yet?)
Last I remember is Richard saying "the capstone backend for mips is not in terribly good shape": https://lore.kernel.org/qemu-devel/0c7827df-c9d4-8dad-a38c-4881ce7dd22b@linaro.org/ My long-term hope is to switch to decodetree.
[Prev in Thread] | Current Thread | [Next in Thread] |