diff options
author | Antoine Tremblay <antoine.tremblay@ericsson.com> | 2015-11-19 11:29:10 -0500 |
---|---|---|
committer | Antoine Tremblay <antoine.tremblay@ericsson.com> | 2015-11-30 15:19:11 -0500 |
commit | fbec8956077503e04f7adeae7f40037fc834edaa (patch) | |
tree | 0d1c99d117bc72281e5a857e4153b42522da33e5 /gdb/gdbserver | |
parent | 9b4c5f878ff39e04127a1ad95f6b3832afe6d278 (diff) | |
download | gdb-fbec8956077503e04f7adeae7f40037fc834edaa.zip gdb-fbec8956077503e04f7adeae7f40037fc834edaa.tar.gz gdb-fbec8956077503e04f7adeae7f40037fc834edaa.tar.bz2 |
Remove too simple breakpoint_reinsert_addr implementations.
This patch removes too simple implementations of the breakpoint_reinsert_addr
operation.
The only reason to keep them around was to support thread events when
PTRACE_EVENT_CLONE was not present but this support has been removed in a
previous patch.
No regressions, tested on ubuntu 14.04 ARMv7 and x86.
With gdbserver-{native,extended} / { -marm -mthumb }
Also compilation was tested on aarch64, bfin, cris, crisv32,
m32r, mips, nios2, ppc, s390, sparc, tic6x, tile, xtensa.
gdb/gdbserver/ChangeLog:
* linux-arm-low.c (arm_reinsert_addr): Remove function.
(struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL.
* linux-cris-low.c (cris_reinsert_addr> Remove function.
(struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
* linux-crisv32-low.c (cris_reinsert_addr): Remove function.
(struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
* linux-mips-low.c (mips_reinsert_addr): Remove function.
(struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
* linux-nios2-low.c (nios2_reinsert_addr): Remove function.
(struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
* linux-sparc-low.c (sparc_reinsert_addr): Remove function.
(struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
Diffstat (limited to 'gdb/gdbserver')
-rw-r--r-- | gdb/gdbserver/ChangeLog | 15 | ||||
-rw-r--r-- | gdb/gdbserver/linux-arm-low.c | 14 | ||||
-rw-r--r-- | gdb/gdbserver/linux-cris-low.c | 18 | ||||
-rw-r--r-- | gdb/gdbserver/linux-crisv32-low.c | 19 | ||||
-rw-r--r-- | gdb/gdbserver/linux-mips-low.c | 14 | ||||
-rw-r--r-- | gdb/gdbserver/linux-nios2-low.c | 14 | ||||
-rw-r--r-- | gdb/gdbserver/linux-sparc-low.c | 15 |
7 files changed, 21 insertions, 88 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 719ac2b..136df26 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,5 +1,20 @@ 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com> + * linux-arm-low.c (arm_reinsert_addr): Remove function. + (struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL. + * linux-cris-low.c (cris_reinsert_addr> Remove function. + (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL. + * linux-crisv32-low.c (cris_reinsert_addr): Remove function. + (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL. + * linux-mips-low.c (mips_reinsert_addr): Remove function. + (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL. + * linux-nios2-low.c (nios2_reinsert_addr): Remove function. + (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL. + * linux-sparc-low.c (sparc_reinsert_addr): Remove function. + (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL. + +2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com> + * linux-low.c (linux_look_up_symbols): Don't call linux_supports_traceclone. * linux-low.h (thread_db_init): Remove use_events argument. diff --git a/gdb/gdbserver/linux-arm-low.c b/gdb/gdbserver/linux-arm-low.c index 0c78888..885aec9 100644 --- a/gdb/gdbserver/linux-arm-low.c +++ b/gdb/gdbserver/linux-arm-low.c @@ -317,18 +317,6 @@ arm_breakpoint_at (CORE_ADDR where) return 0; } -/* We only place breakpoints in empty marker functions, and thread locking - is outside of the function. So rather than importing software single-step, - we can just run until exit. */ -static CORE_ADDR -arm_reinsert_addr (void) -{ - struct regcache *regcache = get_thread_regcache (current_thread, 1); - unsigned long pc; - collect_register_by_name (regcache, "lr", &pc); - return pc; -} - /* Fetch the thread-local storage pointer for libthread_db. */ ps_err_e @@ -1044,7 +1032,7 @@ struct linux_target_ops the_low_target = { arm_set_pc, arm_breakpoint_kind_from_pc, arm_sw_breakpoint_from_kind, - arm_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, arm_breakpoint_at, arm_supports_z_point_type, diff --git a/gdb/gdbserver/linux-cris-low.c b/gdb/gdbserver/linux-cris-low.c index d7b70e3..9f4519c 100644 --- a/gdb/gdbserver/linux-cris-low.c +++ b/gdb/gdbserver/linux-cris-low.c @@ -105,18 +105,6 @@ cris_breakpoint_at (CORE_ADDR where) return 0; } -/* We only place breakpoints in empty marker functions, and thread locking - is outside of the function. So rather than importing software single-step, - we can just run until exit. */ -static CORE_ADDR -cris_reinsert_addr (void) -{ - struct regcache *regcache = get_thread_regcache (current_thread, 1); - unsigned long pc; - collect_register_by_name (regcache, "srp", &pc); - return pc; -} - static void cris_arch_setup (void) { @@ -151,13 +139,9 @@ struct linux_target_ops the_low_target = { cris_set_pc, NULL, /* breakpoint_kind_from_pc */ cris_sw_breakpoint_from_kind, - cris_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, cris_breakpoint_at, - 0, - 0, - 0, - 0, }; void diff --git a/gdb/gdbserver/linux-crisv32-low.c b/gdb/gdbserver/linux-crisv32-low.c index 4f9afa6..2404d0e 100644 --- a/gdb/gdbserver/linux-crisv32-low.c +++ b/gdb/gdbserver/linux-crisv32-low.c @@ -101,23 +101,6 @@ cris_breakpoint_at (CORE_ADDR where) return 0; } -/* We only place breakpoints in empty marker functions, and thread locking - is outside of the function. So rather than importing software single-step, - we can just run until exit. */ - -/* FIXME: This function should not be needed, since we have PTRACE_SINGLESTEP - for CRISv32. Without it, td_ta_event_getmsg in thread_db_create_event - will fail when debugging multi-threaded applications. */ - -static CORE_ADDR -cris_reinsert_addr (void) -{ - struct regcache *regcache = get_thread_regcache (current_thread, 1); - unsigned long pc; - collect_register_by_name (regcache, "srp", &pc); - return pc; -} - static void cris_write_data_breakpoint (struct regcache *regcache, int bp, unsigned long start, unsigned long end) @@ -439,7 +422,7 @@ struct linux_target_ops the_low_target = { cris_set_pc, NULL, /* breakpoint_kind_from_pc */ cris_sw_breakpoint_from_kind, - cris_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, cris_breakpoint_at, cris_supports_z_point_type, diff --git a/gdb/gdbserver/linux-mips-low.c b/gdb/gdbserver/linux-mips-low.c index 459f4fc..b8f8805 100644 --- a/gdb/gdbserver/linux-mips-low.c +++ b/gdb/gdbserver/linux-mips-low.c @@ -275,18 +275,6 @@ mips_sw_breakpoint_from_kind (int kind, int *size) return (const gdb_byte *) &mips_breakpoint; } -/* We only place breakpoints in empty marker functions, and thread locking - is outside of the function. So rather than importing software single-step, - we can just run until exit. */ -static CORE_ADDR -mips_reinsert_addr (void) -{ - struct regcache *regcache = get_thread_regcache (current_thread, 1); - union mips_register ra; - collect_register_by_name (regcache, "r31", ra.buf); - return register_size (regcache->tdesc, 0) == 4 ? ra.reg32 : ra.reg64; -} - static int mips_breakpoint_at (CORE_ADDR where) { @@ -892,7 +880,7 @@ struct linux_target_ops the_low_target = { mips_set_pc, NULL, /* breakpoint_kind_from_pc */ mips_sw_breakpoint_from_kind, - mips_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, mips_breakpoint_at, mips_supports_z_point_type, diff --git a/gdb/gdbserver/linux-nios2-low.c b/gdb/gdbserver/linux-nios2-low.c index 369e89c..9380c3b 100644 --- a/gdb/gdbserver/linux-nios2-low.c +++ b/gdb/gdbserver/linux-nios2-low.c @@ -144,18 +144,6 @@ nios2_sw_breakpoint_from_kind (int kind, int *size) return (const gdb_byte *) &nios2_breakpoint; } -/* Implement the breakpoint_reinsert_addr linux_target_ops method. */ - -static CORE_ADDR -nios2_reinsert_addr (void) -{ - union nios2_register ra; - struct regcache *regcache = get_thread_regcache (current_thread, 1); - - collect_register_by_name (regcache, "ra", ra.buf); - return ra.reg32; -} - /* Implement the breakpoint_at linux_target_ops method. */ static int @@ -279,7 +267,7 @@ struct linux_target_ops the_low_target = nios2_set_pc, NULL, /* breakpoint_kind_from_pc */ nios2_sw_breakpoint_from_kind, - nios2_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, nios2_breakpoint_at, }; diff --git a/gdb/gdbserver/linux-sparc-low.c b/gdb/gdbserver/linux-sparc-low.c index e6a4f84..54a849c 100644 --- a/gdb/gdbserver/linux-sparc-low.c +++ b/gdb/gdbserver/linux-sparc-low.c @@ -265,19 +265,6 @@ sparc_breakpoint_at (CORE_ADDR where) return 0; } -/* We only place breakpoints in empty marker functions, and thread locking - is outside of the function. So rather than importing software single-step, - we can just run until exit. */ -static CORE_ADDR -sparc_reinsert_addr (void) -{ - struct regcache *regcache = get_thread_regcache (current_thread, 1); - CORE_ADDR lr; - /* O7 is the equivalent to the 'lr' of other archs. */ - collect_register_by_name (regcache, "o7", &lr); - return lr; -} - static void sparc_arch_setup (void) { @@ -333,7 +320,7 @@ struct linux_target_ops the_low_target = { NULL, NULL, /* breakpoint_kind_from_pc */ sparc_sw_breakpoint_from_kind, - sparc_reinsert_addr, + NULL, /* breakpoint_reinsert_addr */ 0, sparc_breakpoint_at, NULL, /* supports_z_point_type */ |