aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-12-18 11:10:32 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:47:33 -0700
commit3dbafbbb27843724f56f9016e6781a501c0b2af0 (patch)
treedaa2d196f513f9f8c9de74647a6a6cfb35c33120
parent16f796b16a0a7c16c8c11800136b99e53984f4c2 (diff)
downloadbinutils-3dbafbbb27843724f56f9016e6781a501c0b2af0.zip
binutils-3dbafbbb27843724f56f9016e6781a501c0b2af0.tar.gz
binutils-3dbafbbb27843724f56f9016e6781a501c0b2af0.tar.bz2
convert to_get_bookmark
2014-02-19 Tom Tromey <tromey@redhat.com> * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_get_bookmark. (dummy_get_bookmark): Remove. (init_dummy_target): Don't inherit or default to_get_bookmark. * target.h (struct target_ops) <to_get_bookmark>: Use TARGET_DEFAULT_NORETURN
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/target-delegates.c16
-rw-r--r--gdb/target.c11
-rw-r--r--gdb/target.h3
4 files changed, 29 insertions, 11 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 23d5c3b..3528a4e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -2,6 +2,16 @@
* target-delegates.c: Rebuild.
* target.c (update_current_target): Don't inherit or default
+ to_get_bookmark.
+ (dummy_get_bookmark): Remove.
+ (init_dummy_target): Don't inherit or default to_get_bookmark.
+ * target.h (struct target_ops) <to_get_bookmark>: Use
+ TARGET_DEFAULT_NORETURN
+
+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
to_make_corefile_notes.
(init_dummy_target): Don't initialize to_make_corefile_notes.
* target.h (struct target_ops) <to_make_corefile_notes>: Use
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 33bb329..7d8878a 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -525,6 +525,19 @@ delegate_make_corefile_notes (struct target_ops *self, bfd *arg1, int *arg2)
return self->to_make_corefile_notes (self, arg1, arg2);
}
+static gdb_byte *
+delegate_get_bookmark (struct target_ops *self, char *arg1, int arg2)
+{
+ self = self->beneath;
+ return self->to_get_bookmark (self, arg1, arg2);
+}
+
+static gdb_byte *
+tdefault_get_bookmark (struct target_ops *self, char *arg1, int arg2)
+{
+ tcomplain ();
+}
+
static enum target_xfer_status
delegate_xfer_partial (struct target_ops *self, enum target_object arg1, const char *arg2, gdb_byte *arg3, const gdb_byte *arg4, ULONGEST arg5, ULONGEST arg6, ULONGEST *arg7)
{
@@ -646,6 +659,8 @@ install_delegators (struct target_ops *ops)
ops->to_find_memory_regions = delegate_find_memory_regions;
if (ops->to_make_corefile_notes == NULL)
ops->to_make_corefile_notes = delegate_make_corefile_notes;
+ if (ops->to_get_bookmark == NULL)
+ ops->to_get_bookmark = delegate_get_bookmark;
if (ops->to_xfer_partial == NULL)
ops->to_xfer_partial = delegate_xfer_partial;
if (ops->to_supports_btrace == NULL)
@@ -701,6 +716,7 @@ install_dummy_methods (struct target_ops *ops)
ops->to_async = tdefault_async;
ops->to_find_memory_regions = dummy_find_memory_regions;
ops->to_make_corefile_notes = dummy_make_corefile_notes;
+ ops->to_get_bookmark = tdefault_get_bookmark;
ops->to_xfer_partial = tdefault_xfer_partial;
ops->to_supports_btrace = tdefault_supports_btrace;
}
diff --git a/gdb/target.c b/gdb/target.c
index 911c497..1218e4f 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -670,7 +670,7 @@ update_current_target (void)
/* Do not inherit to_async. */
/* Do not inherit to_find_memory_regions. */
/* Do not inherit to_make_corefile_notes. */
- INHERIT (to_get_bookmark, t);
+ /* Do not inherit to_get_bookmark. */
INHERIT (to_goto_bookmark, t);
/* Do not inherit to_get_thread_local_address. */
INHERIT (to_can_execute_reverse, t);
@@ -3680,14 +3680,6 @@ dummy_make_corefile_notes (struct target_ops *self,
return NULL;
}
-/* Error-catcher for target_get_bookmark. */
-static gdb_byte *
-dummy_get_bookmark (struct target_ops *self, char *ignore1, int ignore2)
-{
- tcomplain ();
- return NULL;
-}
-
/* Error-catcher for target_goto_bookmark. */
static void
dummy_goto_bookmark (struct target_ops *self, gdb_byte *ignore, int from_tty)
@@ -3710,7 +3702,6 @@ init_dummy_target (void)
= find_default_supports_disable_randomization;
dummy_target.to_pid_to_str = dummy_pid_to_str;
dummy_target.to_stratum = dummy_stratum;
- dummy_target.to_get_bookmark = dummy_get_bookmark;
dummy_target.to_goto_bookmark = dummy_goto_bookmark;
dummy_target.to_has_all_memory = (int (*) (struct target_ops *)) return_zero;
dummy_target.to_has_memory = (int (*) (struct target_ops *)) return_zero;
diff --git a/gdb/target.h b/gdb/target.h
index 26a95bc..0fb7d8e 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -588,7 +588,8 @@ struct target_ops
char * (*to_make_corefile_notes) (struct target_ops *, bfd *, int *)
TARGET_DEFAULT_FUNC (dummy_make_corefile_notes);
/* get_bookmark support method for bookmarks */
- gdb_byte * (*to_get_bookmark) (struct target_ops *, char *, int);
+ gdb_byte * (*to_get_bookmark) (struct target_ops *, char *, int)
+ TARGET_DEFAULT_NORETURN (tcomplain ());
/* goto_bookmark support method for bookmarks */
void (*to_goto_bookmark) (struct target_ops *, gdb_byte *, int);
/* Return the thread-local address at OFFSET in the