* Remove redundant/obsolete x86, arm and ppc disassemblers (Capstone is better)

* Limit some Xen-related code to builds where Xen is really available
 * Remove hxtool-conv.pl and remove STEXI/ETEXI references from the docs
 * Update MinGW and OpenBSD to a more recent version in the CI
 * Warn user if the -vga flag is passed but no vga device is created
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmJ4s8wRHHRodXRoQHJl
 ZGhhdC5jb20ACgkQLtnXdP5wLbVszRAAjIJVvJgWJUlRqap/SFV3tX89jIhDKi3+
 luTBhjsDsNoFLd6ARwpykyM9dFF5sEqAHr7tjWtL7nuJIEjsnhwcUi/WUhzfkp44
 mEjmFaZL9WqXE3CD5Hd3HGhXpt5830Nmza59UvLEslLzNrmrEqQVR8cPVmmNCkG9
 diS+tata2NI1p5CF2ScxpxCfxNbDrhrhWN9cU76BM6hut1KH1oA4+fdn2QrSr610
 Y6YWvw+NlzXt9yCW2qDSUlLJvKT4VQ8r4bZ6ab/SiYzw0aHSFK14+150oyPYl91t
 dN7LAyDrheZQ/R46lb76fI57kTmXRQLK0WtxK9dRJTF0hgpGgAEbMNdOOz07oQ45
 oBTFbIa7+mydgmfMZ1uZGSpUI55OOb0VE/N974MJOgXCjlFGLn0YaZezBErViBLd
 ugILNle3IbZWDOwQv4n1fT3VB+2s+I1E3/qPzeDSbGAIkWm41g/4MHpkc5JGMb0j
 dquDo98YdEW/gpFUSFk2u859MA/jMlla77KsOcHpBhKOvLnQtxse+Bi5If4NiR+K
 NPBObMLd2j5rFtUUfDQ1fXEeAkZiITbHNR4yOiOu1tuyTm214xqMuc0/JpqWf+cr
 +fd/i17j2M9Btn7EZePemuyAOqLec41QfOGid320yHS75nhBCdVkDA+g7J0MlOVF
 tFBkhBJ0F+U=
 =8A+p
 -----END PGP SIGNATURE-----

Merge tag 'pull-request-2022-05-09' of https://gitlab.com/thuth/qemu into staging

* Remove redundant/obsolete x86, arm and ppc disassemblers (Capstone is better)
* Limit some Xen-related code to builds where Xen is really available
* Remove hxtool-conv.pl and remove STEXI/ETEXI references from the docs
* Update MinGW and OpenBSD to a more recent version in the CI
* Warn user if the -vga flag is passed but no vga device is created

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmJ4s8wRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbVszRAAjIJVvJgWJUlRqap/SFV3tX89jIhDKi3+
# luTBhjsDsNoFLd6ARwpykyM9dFF5sEqAHr7tjWtL7nuJIEjsnhwcUi/WUhzfkp44
# mEjmFaZL9WqXE3CD5Hd3HGhXpt5830Nmza59UvLEslLzNrmrEqQVR8cPVmmNCkG9
# diS+tata2NI1p5CF2ScxpxCfxNbDrhrhWN9cU76BM6hut1KH1oA4+fdn2QrSr610
# Y6YWvw+NlzXt9yCW2qDSUlLJvKT4VQ8r4bZ6ab/SiYzw0aHSFK14+150oyPYl91t
# dN7LAyDrheZQ/R46lb76fI57kTmXRQLK0WtxK9dRJTF0hgpGgAEbMNdOOz07oQ45
# oBTFbIa7+mydgmfMZ1uZGSpUI55OOb0VE/N974MJOgXCjlFGLn0YaZezBErViBLd
# ugILNle3IbZWDOwQv4n1fT3VB+2s+I1E3/qPzeDSbGAIkWm41g/4MHpkc5JGMb0j
# dquDo98YdEW/gpFUSFk2u859MA/jMlla77KsOcHpBhKOvLnQtxse+Bi5If4NiR+K
# NPBObMLd2j5rFtUUfDQ1fXEeAkZiITbHNR4yOiOu1tuyTm214xqMuc0/JpqWf+cr
# +fd/i17j2M9Btn7EZePemuyAOqLec41QfOGid320yHS75nhBCdVkDA+g7J0MlOVF
# tFBkhBJ0F+U=
# =8A+p
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 08 May 2022 11:25:16 PM PDT
# gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg:                issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [undefined]
# gpg:                 aka "Thomas Huth <thuth@redhat.com>" [undefined]
# gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# gpg:                 aka "Thomas Huth <huth@tuxfamily.org>" [undefined]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3  EAB9 2ED9 D774 FE70 2DB5

* tag 'pull-request-2022-05-09' of https://gitlab.com/thuth/qemu:
  docs/devel/writing-monitor-commands: Replace obsolete STEXI/ETEXI tags
  Warn user if the vga flag is passed but no vga device is created
  tests/vm: update openbsd to release 7.1
  gitlab-ci: Upgrade mingw base package.
  cirrus/win32: upgrade mingw base packages
  doc: remove hxtool-conv.pl
  qemu-options: Limit the -xen options to x86 and arm
  softmmu/vl: Fence 'xenfb' if Xen support is not compiled in
  disas: Remove old libopcode ppc disassembler
  disas: Remove old libopcode i386 disassembler
  disas: Remove old libopcode arm disassembler

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Richard Henderson 2022-05-09 00:34:28 -07:00
commit 7e31419815
27 changed files with 32 additions and 16397 deletions

View File

@ -12,7 +12,7 @@ windows_msys2_task:
CIRRUS_SHELL: powershell
MSYS: winsymlinks:nativestrict
MSYSTEM: MINGW64
MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2021-04-19/msys2-base-x86_64-20210419.sfx.exe
MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2022-05-03/msys2-base-x86_64-20220503.sfx.exe
MSYS2_FINGERPRINT: 0
MSYS2_PACKAGES: "
diffutils git grep make pkg-config sed

View File

@ -16,7 +16,7 @@
}
- If ( !(Test-Path -Path msys64\var\cache\msys2.exe ) ) {
Invoke-WebRequest
"https://github.com/msys2/msys2-installer/releases/download/2021-07-25/msys2-base-x86_64-20210725.sfx.exe"
"https://github.com/msys2/msys2-installer/releases/download/2022-05-03/msys2-base-x86_64-20220503.sfx.exe"
-outfile "msys64\var\cache\msys2.exe"
}
- msys64\var\cache\msys2.exe -y

View File

@ -165,7 +165,6 @@ F: tests/qtest/arm-cpu-features.c
F: hw/arm/
F: hw/cpu/a*mpcore.c
F: include/hw/cpu/a*mpcore.h
F: disas/arm.c
F: disas/arm-a64.cc
F: disas/libvixl/
F: docs/system/target-arm.rst
@ -272,7 +271,6 @@ F: target/ppc/
F: hw/ppc/ppc.c
F: hw/ppc/ppc_booke.c
F: include/hw/ppc/ppc.h
F: disas/ppc.c
RISC-V TCG CPUs
M: Palmer Dabbelt <palmer@dabbelt.com>
@ -335,7 +333,6 @@ F: target/i386/tcg/
F: tests/tcg/i386/
F: tests/tcg/x86_64/
F: hw/i386/
F: disas/i386.c
F: docs/system/cpu-models-x86*
T: git https://gitlab.com/ehabkost/qemu.git x86-next
@ -3271,13 +3268,11 @@ M: Richard Henderson <richard.henderson@linaro.org>
S: Maintained
L: qemu-arm@nongnu.org
F: tcg/arm/
F: disas/arm.c
i386 TCG target
M: Richard Henderson <richard.henderson@linaro.org>
S: Maintained
F: tcg/i386/
F: disas/i386.c
LoongArch64 TCG target
M: WANG Xuerui <git@xen0n.name>
@ -3297,7 +3292,6 @@ PPC TCG target
M: Richard Henderson <richard.henderson@linaro.org>
S: Odd Fixes
F: tcg/ppc/
F: disas/ppc.c
RISC-V TCG target
M: Palmer Dabbelt <palmer@dabbelt.com>

View File

@ -153,21 +153,17 @@ static void initialize_debug_host(CPUDebug *s)
s->info.print_insn = print_insn_tci;
#elif defined(__i386__)
s->info.mach = bfd_mach_i386_i386;
s->info.print_insn = print_insn_i386;
s->info.cap_arch = CS_ARCH_X86;
s->info.cap_mode = CS_MODE_32;
s->info.cap_insn_unit = 1;
s->info.cap_insn_split = 8;
#elif defined(__x86_64__)
s->info.mach = bfd_mach_x86_64;
s->info.print_insn = print_insn_i386;
s->info.cap_arch = CS_ARCH_X86;
s->info.cap_mode = CS_MODE_64;
s->info.cap_insn_unit = 1;
s->info.cap_insn_split = 8;
#elif defined(_ARCH_PPC)
s->info.disassembler_options = (char *)"any";
s->info.print_insn = print_insn_ppc;
s->info.cap_arch = CS_ARCH_PPC;
# ifdef _ARCH_PPC64
s->info.cap_mode = CS_MODE_64;
@ -192,7 +188,6 @@ static void initialize_debug_host(CPUDebug *s)
s->info.mach = bfd_mach_sparc_v9b;
#elif defined(__arm__)
/* TCG only generates code for arm mode. */
s->info.print_insn = print_insn_arm;
s->info.cap_arch = CS_ARCH_ARM;
#elif defined(__MIPSEB__)
s->info.print_insn = print_insn_big_mips;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -4,17 +4,14 @@ subdir('libvixl')
common_ss.add(when: 'CONFIG_ALPHA_DIS', if_true: files('alpha.c'))
common_ss.add(when: 'CONFIG_ARM_A64_DIS', if_true: files('arm-a64.cc'))
common_ss.add_all(when: 'CONFIG_ARM_A64_DIS', if_true: libvixl_ss)
common_ss.add(when: 'CONFIG_ARM_DIS', if_true: files('arm.c'))
common_ss.add(when: 'CONFIG_CRIS_DIS', if_true: files('cris.c'))
common_ss.add(when: 'CONFIG_HEXAGON_DIS', if_true: files('hexagon.c'))
common_ss.add(when: 'CONFIG_HPPA_DIS', if_true: files('hppa.c'))
common_ss.add(when: 'CONFIG_I386_DIS', if_true: files('i386.c'))
common_ss.add(when: 'CONFIG_M68K_DIS', if_true: files('m68k.c'))
common_ss.add(when: 'CONFIG_MICROBLAZE_DIS', if_true: files('microblaze.c'))
common_ss.add(when: 'CONFIG_MIPS_DIS', if_true: files('mips.c'))
common_ss.add(when: 'CONFIG_NANOMIPS_DIS', if_true: files('nanomips.cpp'))
common_ss.add(when: 'CONFIG_NIOS2_DIS', if_true: files('nios2.c'))
common_ss.add(when: 'CONFIG_PPC_DIS', if_true: files('ppc.c'))
common_ss.add(when: 'CONFIG_RISCV_DIS', if_true: files('riscv.c'))
common_ss.add(when: 'CONFIG_SH4_DIS', if_true: files('sh4.c'))
common_ss.add(when: 'CONFIG_SPARC_DIS', if_true: files('sparc.c'))

File diff suppressed because it is too large Load Diff

View File

@ -331,13 +331,10 @@ we should add it to the hmp-commands.hx file::
.cmd = hmp_hello_world,
},
::
STEXI
@item hello_world @var{message}
@findex hello_world
Print message to the standard output
ETEXI
SRST
``hello_world`` *message*
Print message to the standard output
ERST
To test this you have to open a user monitor and issue the "hello-world"
command. It might be instructive to check the command's documentation with

View File

@ -265,6 +265,7 @@ static void machine_hppa_init(MachineState *machine)
/* Graphics setup. */
if (machine->enable_graphics && vga_interface_type != VGA_NONE) {
vga_interface_created = true;
dev = qdev_new("artist");
s = SYS_BUS_DEVICE(dev);
sysbus_realize_and_unref(s, &error_fatal);

View File

@ -166,6 +166,7 @@ bool isa_realize_and_unref(ISADevice *dev, ISABus *bus, Error **errp)
ISADevice *isa_vga_init(ISABus *bus)
{
vga_interface_created = true;
switch (vga_interface_type) {
case VGA_CIRRUS:
return isa_create_simple(bus, "isa-cirrus-vga");

View File

@ -320,6 +320,7 @@ static void mips_fuloong2e_init(MachineState *machine)
/* GPU */
if (vga_interface_type != VGA_NONE) {
vga_interface_created = true;
pci_dev = pci_new(-1, "ati-vga");
dev = DEVICE(pci_dev);
qdev_prop_set_uint32(dev, "vgamem_mb", 16);

View File

@ -2037,6 +2037,7 @@ PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
PCIDevice *pci_vga_init(PCIBus *bus)
{
vga_interface_created = true;
switch (vga_interface_type) {
case VGA_CIRRUS:
return pci_create_simple(bus, -1, "cirrus-vga");

View File

@ -1742,6 +1742,7 @@ static void spapr_rtc_create(SpaprMachineState *spapr)
/* Returns whether we want to use VGA or not */
static bool spapr_vga_init(PCIBus *pci_bus, Error **errp)
{
vga_interface_created = true;
switch (vga_interface_type) {
case VGA_NONE:
return false;

View File

@ -920,6 +920,7 @@ static void sun4m_hw_init(MachineState *machine)
/* sbus irq 5 */
cg3_init(hwdef->tcx_base, slavio_irq[11], 0x00100000,
graphic_width, graphic_height, graphic_depth);
vga_interface_created = true;
} else {
/* If no display specified, default to TCX */
if (graphic_depth != 8 && graphic_depth != 24) {
@ -935,6 +936,7 @@ static void sun4m_hw_init(MachineState *machine)
tcx_init(hwdef->tcx_base, slavio_irq[11], 0x00100000,
graphic_width, graphic_height, graphic_depth);
vga_interface_created = true;
}
}

View File

@ -632,6 +632,7 @@ static void sun4uv_init(MemoryRegion *address_space_mem,
switch (vga_interface_type) {
case VGA_STD:
pci_create_simple(pci_busA, PCI_DEVFN(2, 0), "VGA");
vga_interface_created = true;
break;
case VGA_NONE:
break;

View File

@ -63,6 +63,7 @@ static void xen_init_pv(MachineState *machine)
if (vga_interface_type == VGA_XENFB) {
xen_config_dev_vfb(0, "vnc");
xen_config_dev_vkbd(0);
vga_interface_created = true;
}
/* configure disks */

View File

@ -418,7 +418,6 @@ int print_insn_tci(bfd_vma, disassemble_info*);
int print_insn_big_mips (bfd_vma, disassemble_info*);
int print_insn_little_mips (bfd_vma, disassemble_info*);
int print_insn_nanomips (bfd_vma, disassemble_info*);
int print_insn_i386 (bfd_vma, disassemble_info*);
int print_insn_m68k (bfd_vma, disassemble_info*);
int print_insn_z8001 (bfd_vma, disassemble_info*);
int print_insn_z8002 (bfd_vma, disassemble_info*);
@ -429,7 +428,6 @@ int print_insn_h8500 (bfd_vma, disassemble_info*);
int print_insn_arm_a64 (bfd_vma, disassemble_info*);
int print_insn_alpha (bfd_vma, disassemble_info*);
disassembler_ftype arc_get_disassembler (int, int);
int print_insn_arm (bfd_vma, disassemble_info*);
int print_insn_sparc (bfd_vma, disassemble_info*);
int print_insn_big_a29k (bfd_vma, disassemble_info*);
int print_insn_little_a29k (bfd_vma, disassemble_info*);
@ -449,7 +447,6 @@ int print_insn_w65 (bfd_vma, disassemble_info*);
int print_insn_d10v (bfd_vma, disassemble_info*);
int print_insn_v850 (bfd_vma, disassemble_info*);
int print_insn_tic30 (bfd_vma, disassemble_info*);
int print_insn_ppc (bfd_vma, disassemble_info*);
int print_insn_crisv32 (bfd_vma, disassemble_info*);
int print_insn_crisv10 (bfd_vma, disassemble_info*);
int print_insn_microblaze (bfd_vma, disassemble_info*);

View File

@ -34,6 +34,7 @@ typedef enum {
} VGAInterfaceType;
extern int vga_interface_type;
extern bool vga_interface_created;
extern int graphic_width;
extern int graphic_height;

View File

@ -4186,16 +4186,17 @@ SRST
ERST
DEF("xen-domid", HAS_ARG, QEMU_OPTION_xen_domid,
"-xen-domid id specify xen guest domain id\n", QEMU_ARCH_ALL)
"-xen-domid id specify xen guest domain id\n",
QEMU_ARCH_ARM | QEMU_ARCH_I386)
DEF("xen-attach", 0, QEMU_OPTION_xen_attach,
"-xen-attach attach to existing xen domain\n"
" libxl will use this when starting QEMU\n",
QEMU_ARCH_ALL)
QEMU_ARCH_ARM | QEMU_ARCH_I386)
DEF("xen-domid-restrict", 0, QEMU_OPTION_xen_domid_restrict,
"-xen-domid-restrict restrict set of available xen operations\n"
" to specified domain id. (Does not affect\n"
" xenpv machine type).\n",
QEMU_ARCH_ALL)
QEMU_ARCH_ARM | QEMU_ARCH_I386)
SRST
``-xen-domid id``
Specify xen guest domain id (XEN only).

View File

@ -1,137 +0,0 @@
#!/usr/bin/perl -w
#
# Script to convert .hx file STEXI/ETEXI blocks to SRST/ERST
#
# Copyright (C) 2020 Linaro
#
# This work is licensed under the terms of the GNU GPL, version 2 or
# (at your option) any later version. See the COPYING file in the
# top-level directory.
# This script was only ever intended as a one-off conversion operation.
# Please excuse the places where it is a bit hacky.
# Some manual intervention after the conversion is expected, as are
# some warnings from makeinfo.
# Warning: this script is not idempotent: don't try to run it on
# a .hx file that already has SRST/ERST sections.
# Expected usage:
# scripts/hxtool-conv.pl file.hx > file.hx.new
use utf8;
my $reading_texi = 0;
my $texiblock = '';
my @tables = ();
sub update_tables($) {
my ($texi) = @_;
# Update our list of open table directives: every @table
# line in the texi fragment is added to the list, and every
# @end table line means we remove an entry from the list.
# If this fragment had a completely self contained table with
# both the @table and @end table lines, this will be a no-op.
foreach (split(/\n/, $texi)) {
push @tables, $_ if /^\@table/;
pop @tables if /^\@end table/;
}
}
sub only_table_directives($) {
# Return true if every line in the fragment is a start or end table directive
my ($texi) = @_;
foreach (split(/\n/, $texi)) {
return 0 unless /^\@table/ or /^\@end table/;
}
return 1;
}
sub output_rstblock($) {
# Write the output to /tmp/frag.texi, wrapped in whatever current @table
# lines we need.
my ($texi) = @_;
# As a special case, if this fragment is only table directives and
# nothing else, update our set of open table directives but otherwise
# ignore it. This avoids emitting an empty SRST/ERST block.
if (only_table_directives($texi)) {
update_tables($texi);
return;
}
open(my $fragfh, '>', '/tmp/frag.texi');
# First output the currently active set of open table directives
print $fragfh join("\n", @tables);
# Next, update our list of open table directives.
# We need to do this before we emit the closing table directives
# so that we emit the right number if this fragment had an
# unbalanced set of directives.
update_tables($texi);
# Then emit the texi fragment itself.
print $fragfh "\n$texi\n";
# Finally, add the necessary closing table directives.
print $fragfh "\@end table\n" x scalar @tables;
close $fragfh;
# Now invoke makeinfo/pandoc on it and slurp the results into a string
open(my $fh, '-|', "makeinfo --force -o - --docbook "
. "-D 'qemu_system_x86 QEMU_SYSTEM_X86_MACRO' "
. "-D 'qemu_system QEMU_SYSTEM_MACRO' /tmp/frag.texi "
. " | pandoc -f docbook -t rst")
or die "can't start makeinfo/pandoc: $!";
binmode $fh, ':encoding(utf8)';
print "SRST\n";
# Slurp the whole thing into a string so we can do multiline
# string matches on it.
my $rst = do {
local $/ = undef;
<$fh>;
};
$rst =~ s/^- /- /gm;
$rst =~ s/“/"/gm;
$rst =~ s/”/"/gm;
$rst =~ s//'/gm;
$rst =~ s//'/gm;
$rst =~ s/QEMU_SYSTEM_MACRO/|qemu_system|/g;
$rst =~ s/QEMU_SYSTEM_X86_MACRO/|qemu_system_x86|/g;
$rst =~ s/(?=::\n\n +\|qemu)/.. parsed-literal/g;
$rst =~ s/:\n\n::$/::/gm;
# Fix up the invalid reference format makeinfo/pandoc emit:
# `Some string here <#anchorname>`__
# should be:
# :ref:`anchorname`
$rst =~ s/\`[^<`]+\<\#([^>]+)\>\`__/:ref:`$1`/gm;
print $rst;
close $fh or die "error on close: $!";
print "ERST\n";
}
# Read the whole .hx input file.
while (<>) {
# Always print the current line
print;
if (/STEXI/) {
$reading_texi = 1;
$texiblock = '';
next;
}
if (/ETEXI/) {
$reading_texi = 0;
# dump RST version of block
output_rstblock($texiblock);
next;
}
if ($reading_texi) {
# Accumulate the texi into a string
# but drop findex entries as they will confuse makeinfo
next if /^\@findex/;
$texiblock .= $_;
}
}
die "Unexpectedly still in texi block at EOF" if $reading_texi;

View File

@ -40,6 +40,7 @@ int nb_nics;
NICInfo nd_table[MAX_NICS];
int autostart = 1;
int vga_interface_type = VGA_NONE;
bool vga_interface_created;
Chardev *parallel_hds[MAX_PARALLEL_PORTS];
int win2k_install_hack;
int singlestep;

View File

@ -934,10 +934,12 @@ static const VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
.name = "CG3 framebuffer",
.class_names = { "cgthree" },
},
#ifdef CONFIG_XEN_BACKEND
[VGA_XENFB] = {
.opt_name = "xenfb",
.name = "Xen paravirtualized framebuffer",
},
#endif
};
static bool vga_interface_available(VGAInterfaceType t)
@ -1351,6 +1353,7 @@ static void qemu_disable_default_devices(void)
if (!vga_model && !default_vga) {
vga_interface_type = VGA_DEVICE;
vga_interface_created = true;
}
if (!has_defaults || machine_class->no_serial) {
default_serial = 0;
@ -2734,6 +2737,12 @@ static void qemu_machine_creation_done(void)
if (foreach_device_config(DEV_GDB, gdbserver_start) < 0) {
exit(1);
}
if (!vga_interface_created && !default_vga &&
vga_interface_type != VGA_NONE) {
warn_report("A -vga option was passed but this machine "
"type does not use that option; "
"No VGA device has been created");
}
}
void qmp_x_exit_preconfig(Error **errp)

View File

@ -775,12 +775,6 @@ static bool arm_cpu_virtio_is_big_endian(CPUState *cs)
#endif
static int
print_insn_thumb1(bfd_vma pc, disassemble_info *info)
{
return print_insn_arm(pc | 1, info);
}
static void arm_disas_set_info(CPUState *cpu, disassemble_info *info)
{
ARMCPU *ac = ARM_CPU(cpu);
@ -801,12 +795,10 @@ static void arm_disas_set_info(CPUState *cpu, disassemble_info *info)
} else {
int cap_mode;
if (env->thumb) {
info->print_insn = print_insn_thumb1;
info->cap_insn_unit = 2;
info->cap_insn_split = 4;
cap_mode = CS_MODE_THUMB;
} else {
info->print_insn = print_insn_arm;
info->cap_insn_unit = 4;
info->cap_insn_split = 4;
cap_mode = CS_MODE_ARM;

View File

@ -6821,7 +6821,6 @@ static void x86_disas_set_info(CPUState *cs, disassemble_info *info)
info->mach = (env->hflags & HF_CS64_MASK ? bfd_mach_x86_64
: env->hflags & HF_CS32_MASK ? bfd_mach_i386_i386
: bfd_mach_i386_i8086);
info->print_insn = print_insn_i386;
info->cap_arch = CS_ARCH_X86;
info->cap_mode = (env->hflags & HF_CS64_MASK ? CS_MODE_64

View File

@ -7309,8 +7309,6 @@ static void ppc_disas_set_info(CPUState *cs, disassemble_info *info)
info->mach = bfd_mach_ppc;
#endif
}
info->disassembler_options = (char *)"any";
info->print_insn = print_insn_ppc;
info->cap_arch = CS_ARCH_PPC;
#ifdef TARGET_PPC64

View File

@ -22,8 +22,8 @@ class OpenBSDVM(basevm.BaseVM):
name = "openbsd"
arch = "x86_64"
link = "https://cdn.openbsd.org/pub/OpenBSD/7.0/amd64/install70.iso"
csum = "1882f9a23c9800e5dba3dbd2cf0126f552605c915433ef4c5bb672610a4ca3a4"
link = "https://cdn.openbsd.org/pub/OpenBSD/7.1/amd64/install71.iso"
csum = "d3a7c5b9bf890bc404304a1c96f9ee72e1d9bbcf9cc849c1133bdb0d67843396"
size = "20G"
pkgs = [
# tools