| Index: gdb/gdbserver/linux-bfin-low.c
|
| diff --git a/gdb/gdbserver/linux-bfin-low.c b/gdb/gdbserver/linux-bfin-low.c
|
| index d5b0361181c05aa7af41b0d1baefa2af53289b48..cced3e1670774b58185a369c8538e5a96ac2debc 100644
|
| --- a/gdb/gdbserver/linux-bfin-low.c
|
| +++ b/gdb/gdbserver/linux-bfin-low.c
|
| @@ -1,6 +1,6 @@
|
| /* GNU/Linux/BFIN specific low level interface, for the remote server for GDB.
|
|
|
| - Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
| + Copyright (C) 2005-2013 Free Software Foundation, Inc.
|
|
|
| Contributed by Analog Devices, Inc.
|
|
|
| @@ -26,6 +26,7 @@
|
|
|
| /* Defined in auto-generated file reg-bfin.c. */
|
| void init_registers_bfin (void);
|
| +extern const struct target_desc *tdesc_bfin;
|
|
|
| static int bfin_regmap[] =
|
| {
|
| @@ -90,11 +91,33 @@ bfin_breakpoint_at (CORE_ADDR where)
|
| return 0;
|
| }
|
|
|
| +static void
|
| +bfin_arch_setup (void)
|
| +{
|
| + current_process ()->tdesc = tdesc_bfin;
|
| +}
|
| +
|
| +static struct usrregs_info bfin_usrregs_info =
|
| + {
|
| + bfin_num_regs,
|
| + bfin_regmap,
|
| + };
|
| +
|
| +static struct regs_info regs_info =
|
| + {
|
| + NULL, /* regset_bitmap */
|
| + &bfin_usrregs_info,
|
| + };
|
| +
|
| +static const struct regs_info *
|
| +bfin_regs_info (void)
|
| +{
|
| + return ®s_info;
|
| +}
|
| +
|
| struct linux_target_ops the_low_target = {
|
| - init_registers_bfin,
|
| - bfin_num_regs,
|
| - bfin_regmap,
|
| - NULL,
|
| + bfin_arch_setup,
|
| + bfin_regs_info,
|
| bfin_cannot_fetch_register,
|
| bfin_cannot_store_register,
|
| NULL, /* fetch_register */
|
| @@ -102,7 +125,14 @@ struct linux_target_ops the_low_target = {
|
| bfin_set_pc,
|
| bfin_breakpoint,
|
| bfin_breakpoint_len,
|
| - 0,
|
| + NULL, /* breakpoint_reinsert_addr */
|
| 2,
|
| bfin_breakpoint_at,
|
| };
|
| +
|
| +
|
| +void
|
| +initialize_low_arch (void)
|
| +{
|
| + init_registers_bfin ();
|
| +}
|
|
|