]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
turn remote into a to_xclose target users/pkoning/multi-target
authorPaul Koning <paul_koning@dell.com>
Wed, 28 Oct 2015 19:34:35 +0000 (15:34 -0400)
committerPaul Koning <paul_koning@dell.com>
Wed, 28 Oct 2015 19:34:35 +0000 (15:34 -0400)
commit21b9235dc773505f8bb3b976bea631326c0ef117
tree105ac687e3919c99d2b51106d7ff56562226de00
parent134333697672690ae84e9b9d4314cedffb75128a
turn remote into a to_xclose target

this turns the remote into a to_xclose target
it now subclasses target_ops and puts the remote state there

this isn't really complete unfortunately
I think remote_protocol_packets must be made per-remote
also perhaps the "notif" stuff -- I forget

2014-07-29  Tom Tromey  <tromey@redhat.com>

* remote.c (remote_ops, extended_remote_ops): Move earlier.
(struct remote_ops_with_data): New.
(remote_state): Remove.
(REMOTE_TARGET_STRATUM): New define.
(get_remote_state_raw): Redefine.
(new_remote_state): Return void and take a remote_state as a
parameter.  Update.
(destroy_remote_state): New function.
(get_remote_state): Return NULL if get_remote_state_raw does.
(init_remote_state, get_remote_packet_size, remote_threads_info)
(remote_threads_extra_info): Check for rs==NULL.
(remote_xclose): Rename from remote_close.  Call
destroy_remote_state.  Free "self".
(remote_unpush_target): Use REMOTE_TARGET_STRATUM.
(remote_open_1): Check for rs==NULL.  Use TARGET_NEW.
(discard_pending_stop_replies): Check for rs==NULL.
(remote_mourn_1): Update comment.
(packet_command, remote_file_put, remote_file_get)
(remote_file_delete): Check for rs==NULL.
(init_remote_ops): Set to_xclose, not to_close.  Use
REMOTE_TARGET_STRATUM.
(remote_new_objfile, set_range_stepping): Check for rs==NULL.
(_initialize_remote): Don't call new_remote_state.
gdb/remote.c