aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-12-18 11:16:31 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:47:37 -0700
commit43eba180841a33f29ccc7130e9892ecf852e7c87 (patch)
treefbc566da55d264ef540f15a2a265c740cad17994
parentfe31bf5b9e1b6fcfc5f083228328a84b6af19ad8 (diff)
downloadbinutils-43eba180841a33f29ccc7130e9892ecf852e7c87.zip
binutils-43eba180841a33f29ccc7130e9892ecf852e7c87.tar.gz
binutils-43eba180841a33f29ccc7130e9892ecf852e7c87.tar.bz2
convert to_thread_architecture
2014-02-19 Tom Tromey <tromey@redhat.com> * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_thread_architecture. * target.h (struct target_ops) <to_thread_architecture>: Use TARGET_DEFAULT_FUNC.
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/target-delegates.c10
-rw-r--r--gdb/target.c4
-rw-r--r--gdb/target.h3
4 files changed, 21 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ae8bfac..bd2ec73 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -2,6 +2,14 @@
* target-delegates.c: Rebuild.
* target.c (update_current_target): Don't inherit or default
+ to_thread_architecture.
+ * target.h (struct target_ops) <to_thread_architecture>: Use
+ TARGET_DEFAULT_FUNC.
+
+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
to_execution_direction.
* target.h (struct target_ops) <to_execution_direction>: Use
TARGET_DEFAULT_FUNC.
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 75a715f..643b732 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -584,6 +584,13 @@ delegate_execution_direction (struct target_ops *self)
return self->to_execution_direction (self);
}
+static struct gdbarch *
+delegate_thread_architecture (struct target_ops *self, ptid_t arg1)
+{
+ self = self->beneath;
+ return self->to_thread_architecture (self, arg1);
+}
+
static int
delegate_supports_btrace (struct target_ops *self)
{
@@ -702,6 +709,8 @@ install_delegators (struct target_ops *ops)
ops->to_can_execute_reverse = delegate_can_execute_reverse;
if (ops->to_execution_direction == NULL)
ops->to_execution_direction = delegate_execution_direction;
+ if (ops->to_thread_architecture == NULL)
+ ops->to_thread_architecture = delegate_thread_architecture;
if (ops->to_supports_btrace == NULL)
ops->to_supports_btrace = delegate_supports_btrace;
}
@@ -760,5 +769,6 @@ install_dummy_methods (struct target_ops *ops)
ops->to_xfer_partial = tdefault_xfer_partial;
ops->to_can_execute_reverse = tdefault_can_execute_reverse;
ops->to_execution_direction = default_execution_direction;
+ ops->to_thread_architecture = default_thread_architecture;
ops->to_supports_btrace = tdefault_supports_btrace;
}
diff --git a/gdb/target.c b/gdb/target.c
index 7fe28e3..6361104 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -678,7 +678,7 @@ update_current_target (void)
/* Do not inherit to_get_thread_local_address. */
/* Do not inherit to_can_execute_reverse. */
/* Do not inherit to_execution_direction. */
- INHERIT (to_thread_architecture, t);
+ /* Do not inherit to_thread_architecture. */
/* Do not inherit to_read_description. */
INHERIT (to_get_ada_task_ptid, t);
/* Do not inherit to_search_memory. */
@@ -748,8 +748,6 @@ update_current_target (void)
de_fault (to_stop,
(void (*) (struct target_ops *, ptid_t))
target_ignore);
- de_fault (to_thread_architecture,
- default_thread_architecture);
current_target.to_read_description = NULL;
de_fault (to_get_ada_task_ptid,
(ptid_t (*) (struct target_ops *, long, long))
diff --git a/gdb/target.h b/gdb/target.h
index fa6056e..733fdfe 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -742,7 +742,8 @@ struct target_ops
ptrace operations need to operate according to target_gdbarch ().
The default implementation always returns target_gdbarch (). */
- struct gdbarch *(*to_thread_architecture) (struct target_ops *, ptid_t);
+ struct gdbarch *(*to_thread_architecture) (struct target_ops *, ptid_t)
+ TARGET_DEFAULT_FUNC (default_thread_architecture);
/* Determine current address space of thread PTID.