X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Frs6000-tdep.c;h=1e1fbc7022b4bf2b99609101ff80ce202baf4f59;hb=0743fc83c03da263953dfc393a66744a08770365;hp=33cdc788117468cb03980502f035839d029388de;hpb=85102364b2d1845fe9ae7d70096671a3ea4bccf3;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index 33cdc78811..1e1fbc7022 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -1,6 +1,6 @@ /* Target-dependent code for GDB, the GNU debugger. - Copyright (C) 1986-2019 Free Software Foundation, Inc. + Copyright (C) 1986-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -37,7 +37,7 @@ #include "sim-regno.h" #include "gdb/sim-ppc.h" #include "reggroups.h" -#include "dwarf2-frame.h" +#include "dwarf2/frame.h" #include "target-descriptions.h" #include "user-regs.h" #include "record-full.h" @@ -855,7 +855,7 @@ typedef buf_displaced_step_closure ppc_displaced_step_closure; /* We can't displaced step atomic sequences. */ -static struct displaced_step_closure * +static displaced_step_closure_up ppc_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) @@ -894,7 +894,8 @@ ppc_displaced_step_copy_insn (struct gdbarch *gdbarch, displaced_step_dump_bytes (gdb_stdlog, buf, len); } - return closure.release (); + /* This is a work around for a problem with g++ 4.8. */ + return displaced_step_closure_up (closure.release ()); } /* Fix up the state of registers and memory after having single-stepped @@ -1360,7 +1361,7 @@ rs6000_skip_stack_check (struct gdbarch *gdbarch, const CORE_ADDR start_pc) return pc; } - /* Third sequence: No probe; instead, a comparizon between the stack size + /* Third sequence: No probe; instead, a comparison between the stack size limit (saved in a run-time global variable) and the current stack pointer: @@ -2119,9 +2120,9 @@ rs6000_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR pc) to __eabi in case the GCC option "-fleading-underscore" was used to compile the program. */ if (s.minsym != NULL - && MSYMBOL_LINKAGE_NAME (s.minsym) != NULL - && (strcmp (MSYMBOL_LINKAGE_NAME (s.minsym), "__eabi") == 0 - || strcmp (MSYMBOL_LINKAGE_NAME (s.minsym), "___eabi") == 0)) + && s.minsym->linkage_name () != NULL + && (strcmp (s.minsym->linkage_name (), "__eabi") == 0 + || strcmp (s.minsym->linkage_name (), "___eabi") == 0)) pc += 4; } return pc; @@ -2205,7 +2206,7 @@ rs6000_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc) msymbol = lookup_minimal_symbol_by_pc (pc); if (msymbol.minsym && rs6000_in_solib_return_trampoline (gdbarch, pc, - MSYMBOL_LINKAGE_NAME (msymbol.minsym))) + msymbol.minsym->linkage_name ())) { /* Double-check that the third instruction from PC is relative "b". */ op = read_memory_integer (pc + 8, 4, byte_order); @@ -7171,22 +7172,6 @@ rs6000_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file) /* FIXME: Dump gdbarch_tdep. */ } -/* PowerPC-specific commands. */ - -static void -set_powerpc_command (const char *args, int from_tty) -{ - printf_unfiltered (_("\ -\"set powerpc\" must be followed by an appropriate subcommand.\n")); - help_list (setpowerpccmdlist, "set powerpc ", all_commands, gdb_stdout); -} - -static void -show_powerpc_command (const char *args, int from_tty) -{ - cmd_show_list (showpowerpccmdlist, from_tty, ""); -} - static void powerpc_set_soft_float (const char *args, int from_tty, struct cmd_list_element *c) @@ -7307,8 +7292,9 @@ ppc_insn_ds_field (unsigned int insn) /* Initialization code. */ +void _initialize_rs6000_tdep (); void -_initialize_rs6000_tdep (void) +_initialize_rs6000_tdep () { gdbarch_register (bfd_arch_rs6000, rs6000_gdbarch_init, rs6000_dump_tdep); gdbarch_register (bfd_arch_powerpc, rs6000_gdbarch_init, rs6000_dump_tdep); @@ -7336,13 +7322,13 @@ _initialize_rs6000_tdep (void) /* Add root prefix command for all "set powerpc"/"show powerpc" commands. */ - add_prefix_cmd ("powerpc", no_class, set_powerpc_command, - _("Various PowerPC-specific commands."), - &setpowerpccmdlist, "set powerpc ", 0, &setlist); + add_basic_prefix_cmd ("powerpc", no_class, + _("Various PowerPC-specific commands."), + &setpowerpccmdlist, "set powerpc ", 0, &setlist); - add_prefix_cmd ("powerpc", no_class, show_powerpc_command, - _("Various PowerPC-specific commands."), - &showpowerpccmdlist, "show powerpc ", 0, &showlist); + add_show_prefix_cmd ("powerpc", no_class, + _("Various PowerPC-specific commands."), + &showpowerpccmdlist, "show powerpc ", 0, &showlist); /* Add a command to allow the user to force the ABI. */ add_setshow_auto_boolean_cmd ("soft-float", class_support,