aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-12-18 09:51:47 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:47:04 -0700
commitf86e59b2d1189ca289d971e2fd6ca51238a232fa (patch)
tree508301619b01e4ace723d2575ba3628eb2cb8416
parent6c628163866f1d34561472c32a18a17cadf37a51 (diff)
downloadgdb-f86e59b2d1189ca289d971e2fd6ca51238a232fa.zip
gdb-f86e59b2d1189ca289d971e2fd6ca51238a232fa.tar.gz
gdb-f86e59b2d1189ca289d971e2fd6ca51238a232fa.tar.bz2
convert to_files_info
2014-02-19 Tom Tromey <tromey@redhat.com> * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_files_info. * target.h (struct target_ops) <to_files_info>: Use TARGET_DEFAULT_IGNORE.
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/target-delegates.c15
-rw-r--r--gdb/target.c5
-rw-r--r--gdb/target.h3
4 files changed, 26 insertions, 5 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 9a2ff8c..ebeb7d6 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_files_info.
+ * target.h (struct target_ops) <to_files_info>: Use
+ TARGET_DEFAULT_IGNORE.
+
+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
to_store.
* target.h (struct target_ops) <to_store>: Use
TARGET_DEFAULT_NORETURN.
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 3f1ec9b..3186a58 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -86,6 +86,18 @@ tdefault_prepare_to_store (struct target_ops *self, struct regcache *arg1)
noprocess ();
}
+static void
+delegate_files_info (struct target_ops *self)
+{
+ self = self->beneath;
+ self->to_files_info (self);
+}
+
+static void
+tdefault_files_info (struct target_ops *self)
+{
+}
+
static int
delegate_insert_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
{
@@ -203,6 +215,8 @@ install_delegators (struct target_ops *ops)
ops->to_store_registers = delegate_store_registers;
if (ops->to_prepare_to_store == NULL)
ops->to_prepare_to_store = delegate_prepare_to_store;
+ if (ops->to_files_info == NULL)
+ ops->to_files_info = delegate_files_info;
if (ops->to_insert_breakpoint == NULL)
ops->to_insert_breakpoint = delegate_insert_breakpoint;
if (ops->to_remove_breakpoint == NULL)
@@ -235,6 +249,7 @@ install_dummy_methods (struct target_ops *ops)
ops->to_wait = tdefault_wait;
ops->to_store_registers = tdefault_store_registers;
ops->to_prepare_to_store = tdefault_prepare_to_store;
+ ops->to_files_info = tdefault_files_info;
ops->to_insert_breakpoint = memory_insert_breakpoint;
ops->to_remove_breakpoint = memory_remove_breakpoint;
ops->to_stopped_by_watchpoint = tdefault_stopped_by_watchpoint;
diff --git a/gdb/target.c b/gdb/target.c
index 05b307d..fc16272 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -601,7 +601,7 @@ update_current_target (void)
/* Do not inherit to_store_registers. */
/* Do not inherit to_prepare_to_store. */
INHERIT (deprecated_xfer_memory, t);
- INHERIT (to_files_info, t);
+ /* Do not inherit to_files_info. */
/* Do not inherit to_insert_breakpoint. */
/* Do not inherit to_remove_breakpoint. */
INHERIT (to_can_use_hw_breakpoint, t);
@@ -734,9 +734,6 @@ update_current_target (void)
(int (*) (CORE_ADDR, gdb_byte *, int, int,
struct mem_attrib *, struct target_ops *))
nomemory);
- de_fault (to_files_info,
- (void (*) (struct target_ops *))
- target_ignore);
de_fault (to_can_use_hw_breakpoint,
(int (*) (struct target_ops *, int, int, int))
return_zero);
diff --git a/gdb/target.h b/gdb/target.h
index 4b476aa..fd0afcf 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -447,7 +447,8 @@ struct target_ops
struct mem_attrib *attrib,
struct target_ops *target);
- void (*to_files_info) (struct target_ops *);
+ void (*to_files_info) (struct target_ops *)
+ TARGET_DEFAULT_IGNORE ();
int (*to_insert_breakpoint) (struct target_ops *, struct gdbarch *,
struct bp_target_info *)
TARGET_DEFAULT_FUNC (memory_insert_breakpoint);