diff options
author | Yao Qi <yao@codesourcery.com> | 2014-02-10 15:28:33 +0800 |
---|---|---|
committer | Yao Qi <yao@codesourcery.com> | 2014-02-23 11:44:27 +0800 |
commit | a283690eb7320dfe4074301c673f6cc3dd21fb11 (patch) | |
tree | 16bd91d05566c2949d9d1c3f758296a7ff17af08 /gdb | |
parent | 12e03cd06ada8ca7e62fa52aa84946256c1bc654 (diff) | |
download | binutils-gdb-a283690eb7320dfe4074301c673f6cc3dd21fb11.tar.gz |
Let tracefile has_memory and has_all_memory.
At present, tfile target thinks it has memory but ctf doesn't.
This is an oversight when I added ctf target support. This patch
moves the implementations of to_has_all_memory and to_has_memory to
upper layer. After this change, both tfile and ctf target think
they have memory.
gdb:
2014-02-23 Yao Qi <yao@codesourcery.com>
* tracefile-tfile.c (tfile_has_all_memory): Remove.
(tfile_has_memory): Remove.
(init_tfile_ops): Don't set fields to_has_all_memory and
to_has_memory of tfile_ops.
* tracefile.c (tracefile_has_all_memory): New function.
(tracefile_has_memory): New function.
(init_tracefile_ops): Initialize fields to_has_all_memory and
to_has_memory of 'ops'.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 11 | ||||
-rw-r--r-- | gdb/tracefile-tfile.c | 14 | ||||
-rw-r--r-- | gdb/tracefile.c | 18 |
3 files changed, 29 insertions, 14 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a5f4710bac0..d7c33108d79 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,16 @@ 2014-02-23 Yao Qi <yao@codesourcery.com> + * tracefile-tfile.c (tfile_has_all_memory): Remove. + (tfile_has_memory): Remove. + (init_tfile_ops): Don't set fields to_has_all_memory and + to_has_memory of tfile_ops. + * tracefile.c (tracefile_has_all_memory): New function. + (tracefile_has_memory): New function. + (init_tracefile_ops): Initialize fields to_has_all_memory and + to_has_memory of 'ops'. + +2014-02-23 Yao Qi <yao@codesourcery.com> + * ctf.c (ctf_has_stack, ctf_has_registers): Remove. (ctf_thread_alive, ctf_get_trace_status): Remove. (init_ctf_ops): Don't set some fields of ctf_ops. Call diff --git a/gdb/tracefile-tfile.c b/gdb/tracefile-tfile.c index 2daa560f641..3ef109eb158 100644 --- a/gdb/tracefile-tfile.c +++ b/gdb/tracefile-tfile.c @@ -1012,18 +1012,6 @@ tfile_get_trace_state_variable_value (struct target_ops *self, return found; } -static int -tfile_has_all_memory (struct target_ops *ops) -{ - return 1; -} - -static int -tfile_has_memory (struct target_ops *ops) -{ - return 1; -} - /* Callback for traceframe_walk_blocks. Builds a traceframe_info object for the tfile target's current traceframe. */ @@ -1105,8 +1093,6 @@ init_tfile_ops (void) tfile_ops.to_trace_find = tfile_trace_find; tfile_ops.to_get_trace_state_variable_value = tfile_get_trace_state_variable_value; - tfile_ops.to_has_all_memory = tfile_has_all_memory; - tfile_ops.to_has_memory = tfile_has_memory; tfile_ops.to_traceframe_info = tfile_traceframe_info; } diff --git a/gdb/tracefile.c b/gdb/tracefile.c index 79722901ec5..508f898dfe6 100644 --- a/gdb/tracefile.c +++ b/gdb/tracefile.c @@ -376,6 +376,22 @@ trace_save_ctf (const char *dirname, int target_does_save) do_cleanups (back_to); } +/* This is the implementation of target_ops method to_has_all_memory. */ + +static int +tracefile_has_all_memory (struct target_ops *ops) +{ + return 1; +} + +/* This is the implementation of target_ops method to_has_memory. */ + +static int +tracefile_has_memory (struct target_ops *ops) +{ + return 1; +} + /* This is the implementation of target_ops method to_has_stack. The target has a stack when GDB has already selected one trace frame. */ @@ -424,6 +440,8 @@ init_tracefile_ops (struct target_ops *ops) { ops->to_stratum = process_stratum; ops->to_get_trace_status = tracefile_get_trace_status; + ops->to_has_all_memory = tracefile_has_all_memory; + ops->to_has_memory = tracefile_has_memory; ops->to_has_stack = tracefile_has_stack; ops->to_has_registers = tracefile_has_registers; ops->to_thread_alive = tracefile_thread_alive; |