X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fdisasm-selftests.c;h=a24db7f224ff983fa3cc0746e547043243e7ee40;hb=9d95b8e9d631e76eb152c86003db6b89e913bdd9;hp=9eb80b4b2bbc29953a8b84f57aad2feecadc5515;hpb=b1ace6bdc2063f3dcf46172db98bb3474b6e1121;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/disasm-selftests.c b/gdb/disasm-selftests.c index 9eb80b4b2b..a24db7f224 100644 --- a/gdb/disasm-selftests.c +++ b/gdb/disasm-selftests.c @@ -1,6 +1,6 @@ /* Self tests for disassembler for GDB, the GNU debugger. - Copyright (C) 2017 Free Software Foundation, Inc. + Copyright (C) 2017-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -19,10 +19,9 @@ #include "defs.h" #include "disasm.h" - -#if GDB_SELF_TEST -#include "selftest.h" +#include "gdbsupport/selftest.h" #include "selftest-arch.h" +#include "gdbarch.h" namespace selftests { @@ -77,12 +76,15 @@ print_one_insn_test (struct gdbarch *gdbarch) /* fall through */ case bfd_arch_nios2: case bfd_arch_score: - /* nios2 and score need to know the current instruction to select - breakpoint instruction. Give the breakpoint instruction kind - explicitly. */ - int bplen; - insn = gdbarch_sw_breakpoint_from_kind (gdbarch, 4, &bplen); - len = bplen; + case bfd_arch_riscv: + /* nios2, riscv, and score need to know the current instruction + to select breakpoint instruction. Give the breakpoint + instruction kind explicitly. */ + { + int bplen; + insn = gdbarch_sw_breakpoint_from_kind (gdbarch, 4, &bplen); + len = bplen; + } break; default: { @@ -189,32 +191,28 @@ memory_error_test (struct gdbarch *gdbarch) gdb_disassembler_test di (gdbarch); bool saw_memory_error = false; - TRY + try { di.print_insn (0); } - CATCH (ex, RETURN_MASK_ERROR) + catch (const gdb_exception_error &ex) { if (ex.error == MEMORY_ERROR) saw_memory_error = true; } - END_CATCH /* Expect MEMORY_ERROR. */ SELF_CHECK (saw_memory_error); } } // namespace selftests -#endif /* GDB_SELF_TEST */ - -/* Suppress warning from -Wmissing-prototypes. */ -extern initialize_file_ftype _initialize_disasm_selftests; +void _initialize_disasm_selftests (); void -_initialize_disasm_selftests (void) +_initialize_disasm_selftests () { -#if GDB_SELF_TEST - register_self_test_foreach_arch (selftests::print_one_insn_test); - register_self_test_foreach_arch (selftests::memory_error_test); -#endif + selftests::register_test_foreach_arch ("print_one_insn", + selftests::print_one_insn_test); + selftests::register_test_foreach_arch ("memory_error", + selftests::memory_error_test); }