diff options
author | Daniel Jacobowitz <drow@false.org> | 2003-07-24 19:03:50 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2003-07-24 19:03:50 +0000 |
commit | 3b2fc2ea683563693bf8f2c57e3b80322fceb332 (patch) | |
tree | 867afc9859d68f4fd63839a80c0d7eaed8a62717 | |
parent | a9f12a31acf648a8c5bb24d836ec19331d7fe535 (diff) | |
download | gdb-3b2fc2ea683563693bf8f2c57e3b80322fceb332.zip gdb-3b2fc2ea683563693bf8f2c57e3b80322fceb332.tar.gz gdb-3b2fc2ea683563693bf8f2c57e3b80322fceb332.tar.bz2 |
* linux-arm-low.c (arm_reinsert_addr): New function.
(the_low_target): Add arm_reinsert_addr.
-rw-r--r-- | gdb/gdbserver/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/gdbserver/linux-arm-low.c | 13 |
2 files changed, 17 insertions, 1 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 1f488bc..1a3a7dc 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,8 @@ +2003-07-24 Daniel Jacobowitz <drow@mvista.com> + + * linux-arm-low.c (arm_reinsert_addr): New function. + (the_low_target): Add arm_reinsert_addr. + 2003-07-08 Mark Kettenis <kettenis@gnu.org> * mem-break.c: Remove whitespace at end of file. diff --git a/gdb/gdbserver/linux-arm-low.c b/gdb/gdbserver/linux-arm-low.c index cd075b2..2e8bb98 100644 --- a/gdb/gdbserver/linux-arm-low.c +++ b/gdb/gdbserver/linux-arm-low.c @@ -80,6 +80,17 @@ 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 () +{ + unsigned long pc; + collect_register_by_name ("lr", &pc); + return pc; +} + struct linux_target_ops the_low_target = { arm_num_regs, arm_regmap, @@ -89,7 +100,7 @@ struct linux_target_ops the_low_target = { arm_set_pc, (const char *) &arm_breakpoint, arm_breakpoint_len, - NULL, + arm_reinsert_addr, 0, arm_breakpoint_at, }; |