diff options
-rw-r--r-- | gdb/ChangeLog | 10 | ||||
-rw-r--r-- | gdb/record.c | 6 | ||||
-rw-r--r-- | gdb/target.c | 3 |
3 files changed, 19 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 95d0bff..1abc0df 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com> + Hui Zhu <teawater@gmail.com> + + * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and + tmp_to_stopped_data_address. + (record_open): Reset tmp_to_stopped_by_watchpoint and + tmp_to_stopped_data_address. + * target.c (init_dummy_target): Add to_stopped_by_watchpoint and + to_stopped_data_address. + 2010-03-08 Hui Zhu <teawater@gmail.com> * i386-tdep.c (i386_process_record): Initialize regnum. diff --git a/gdb/record.c b/gdb/record.c index 9d24f01..fa6cfbb 100644 --- a/gdb/record.c +++ b/gdb/record.c @@ -867,6 +867,10 @@ record_open_1 (char *name, int from_tty) error (_("Could not find 'to_insert_breakpoint' method on the target stack.")); if (!tmp_to_remove_breakpoint) error (_("Could not find 'to_remove_breakpoint' method on the target stack.")); + if (!tmp_to_stopped_by_watchpoint) + error (_("Could not find 'to_stopped_by_watchpoint' method on the target stack.")); + if (!tmp_to_stopped_data_address) + error (_("Could not find 'to_stopped_data_address' method on the target stack.")); push_target (&record_ops); } @@ -897,6 +901,8 @@ record_open (char *name, int from_tty) tmp_to_xfer_partial = NULL; tmp_to_insert_breakpoint = NULL; tmp_to_remove_breakpoint = NULL; + tmp_to_stopped_by_watchpoint = NULL; + tmp_to_stopped_data_address = NULL; /* Set the beneath function pointers. */ for (t = current_target.beneath; t != NULL; t = t->beneath) diff --git a/gdb/target.c b/gdb/target.c index 1f90171..5f7a2e7 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -2838,6 +2838,9 @@ init_dummy_target (void) dummy_target.to_has_stack = (int (*) (struct target_ops *)) return_zero; dummy_target.to_has_registers = (int (*) (struct target_ops *)) return_zero; dummy_target.to_has_execution = (int (*) (struct target_ops *)) return_zero; + dummy_target.to_stopped_by_watchpoint = return_zero; + dummy_target.to_stopped_data_address = + (int (*) (struct target_ops *, CORE_ADDR *)) return_zero; dummy_target.to_magic = OPS_MAGIC; } |