From: Tom de Vries Date: Mon, 6 Jun 2022 17:27:46 +0000 (+0200) Subject: [gdb] Enable some more print_one_insn selftests X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4ab19f4c9b3c838cd904a501b77148a459420b4c;p=binutils-gdb.git [gdb] Enable some more print_one_insn selftests In print_one_insn_test we have this cluster of skipped tests: ... case bfd_arch_ia64: case bfd_arch_mep: case bfd_arch_mips: case bfd_arch_tic6x: case bfd_arch_xtensa: return; ... Enable some of these, and document in more detail why they're enabled or skipped. Likewise, document bfd_arch_or1k because it's an odd case. Tested on x86_64-linux. --- diff --git a/gdb/disasm-selftests.c b/gdb/disasm-selftests.c index 266745d01c7..4f5667bc4e2 100644 --- a/gdb/disasm-selftests.c +++ b/gdb/disasm-selftests.c @@ -50,11 +50,29 @@ print_one_insn_test (struct gdbarch *gdbarch) len = sizeof (arm_insn); break; case bfd_arch_ia64: + /* We get: + internal-error: gdbarch_sw_breakpoint_from_kind: + Assertion `gdbarch->sw_breakpoint_from_kind != NULL' failed. */ + return; case bfd_arch_mep: + /* Disassembles as '*unknown*' insn, then len self-check fails. */ + return; case bfd_arch_mips: + if (gdbarch_bfd_arch_info (gdbarch)->mach == bfd_mach_mips16) + /* Disassembles insn, but len self-check fails. */ + return; + goto generic_case; case bfd_arch_tic6x: + /* Disassembles as '' insn, but len + self-check passes, so let's allow it. */ + goto generic_case; case bfd_arch_xtensa: + /* Disassembles insn, but len self-check fails. */ return; + case bfd_arch_or1k: + /* Disassembles as '*unknown*' insn, but len self-check passes, so let's + allow it. */ + goto generic_case; case bfd_arch_s390: /* nopr %r7 */ static const gdb_byte s390_insn[] = {0x07, 0x07};