public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v2 00/58] Turn gdbserver's process_stratum_target into a class
@ 2020-02-17 17:01 Tankut Baris Aktemur
  2020-02-17 16:59 ` [PATCH v2 14/58] gdbserver: turn target ops 'read_memory' and 'write_memory' into methods Tankut Baris Aktemur
                   ` (59 more replies)
  0 siblings, 60 replies; 66+ messages in thread
From: Tankut Baris Aktemur @ 2020-02-17 17:01 UTC (permalink / raw)
  To: gdb-patches; +Cc: palves

Hello,

This is v2 of the series that was posted at

  https://sourceware.org/ml/gdb-patches/2020-02/msg00313.html

This revision makes the following updates to the previous version:

1. Pedro's comments have been addressed.

2. The series has been rebased on the current master.

3. The win32-low target has been built (but not tested) via
cross-compilation (my thanks to Christian for the tips).  There were a
couple problems detected -- I fixed them.

I am in the process of using buildbot to test on a wide range of
available targets (assuming a series of this size will be accepted by
buildbot).  However, I'm afraid I won't be able to build and test
nto-low and lynx-low.

Finally, this revision is also available at
https://github.com/barisaktemur/gdb/tree/gdbserver-cppify-target-v2

Regards,
Baris


Pedro Alves (1):
  gdbserver: simply copy the pointer in 'set_target_ops'

Tankut Baris Aktemur (57):
  gdbserver: start turning the target ops vector into a class
  gdbserver: turn target op 'create_inferior' into a method
  gdbserver: turn target op 'post_create_inferior' into a method
  gdbserver: turn target op 'attach' into a method
  gdbserver: turn target op 'kill' into a method
  gdbserver: turn target op 'detach' into a method
  gdbserver: turn target op 'mourn' into a method
  gdbserver: turn target op 'join' into a method
  gdbserver: turn target op 'thread_alive' into a method
  gdbserver: turn target op 'resume' into a method
  gdbserver: turn target op 'wait' into a method
  gdbserver: turn target ops 'fetch_registers' and 'store_registers'
    into methods
  gdbserver: turn prepare_to_access_memory & done_accessing_memory into
    methods
  gdbserver: turn target ops 'read_memory' and 'write_memory' into
    methods
  gdbserver: turn target op 'look_up_symbols' into a method
  gdbserver: turn target op 'request_interrupt' into a method
  gdbserver: turn target op 'read_auxv' into a method
  gdbserver: turn target op 'supports_z_point_type' into a method
  gdbserver: turn target ops 'insert_point' and 'remove_point' into
    methods
  gdbserver: turn target op '{supports_}stopped_by_sw_breakpoint' into a
    method
  gdbserver: turn target op '{supports_}stopped_by_hw_breakpoint' into a
    method
  gdbserver: turn target op 'supports_hardware_single_step' into a
    method
  gdbserver: turn target ops 'stopped_by_watchpoint' and
    'stopped_data_address' into methods
  gdbserver: turn target op 'read_offsets' into a method
  gdbserver: turn target op 'get_tls_address' into a method
  gdbserver: turn target op 'hostio_last_error' into a method
  gdbserver: turn target op 'qxfer_osdata' into a method
  gdbserver: turn target op 'qxfer_siginfo' into a method
  gdbserver: turn non-stop and async target ops into methods
  gdbserver: turn target op 'supports_multi_process' into a method
  gdbserver: turn target ops 'supports_{fork,vfork,exec}_events' into
    methods
  gdbserver: turn target op 'handle_new_gdb_connection' into a method
  gdbserver: turn target op 'handle_monitor_command' into a method
  gdbserver: turn target op 'core_of_thread' into a method
  gdbserver: turn target op 'read_loadmap' into a method
  gdbserver: turn target op 'process_qsupported' into a method
  gdbserver: turn target op 'supports_tracepoints' into a method
  gdbserver: turn target ops 'read_pc' and 'write_pc' into methods
  gdbserver: turn target op 'thread_stopped' into a method
  gdbserver: turn target op 'get_tib_address' into a method
  gdbserver: turn target ops 'pause_all' and 'unpause_all' into methods
  gdbserver: turn target op 'stabilize_threads' into a method
  gdbserver: turn fast tracepoint target ops into methods
  gdbserver: turn target op 'emit_ops' into a method
  gdbserver: turn target op 'supports_disable_randomization' into a
    method
  gdbserver: turn target op 'qxfer_libraries_svr4' into a method
  gdbserver: turn target op 'supports_agent' into a method
  gdbserver: turn btrace-related target ops into methods
  gdbserver: turn target op 'supports_range_stepping' into a method
  gdbserver: turn target op 'pid_to_exec_file' into a method
  gdbserver: turn target ops 'multifs_{open, readlink, unlink}' into
    methods
  gdbserver: turn breakpoint kind-related target ops into methods
  gdbserver: turn target ops 'thread_name' and 'thread_handle' into
    methods
  gdbserver: turn target op 'supports_software_single_step' into a
    method
  gdbserver: turn target op 'supports_catch_syscall' into a method
  gdbserver: turn target op 'get_ipa_tdesc_idx' into a method
  gdbserver: finish turning the target ops vector into a class

 gdbserver/hostio.cc            |  13 +-
 gdbserver/linux-aarch32-low.cc |   6 +-
 gdbserver/linux-aarch64-low.cc |   4 +-
 gdbserver/linux-arm-low.cc     |   8 +-
 gdbserver/linux-cris-low.cc    |   4 +-
 gdbserver/linux-crisv32-low.cc |   4 +-
 gdbserver/linux-low.cc         | 654 ++++++++++++++++++---------------
 gdbserver/linux-low.h          | 219 +++++++++++
 gdbserver/linux-m32r-low.cc    |   4 +-
 gdbserver/linux-mips-low.cc    |   2 +-
 gdbserver/linux-nios2-low.cc   |   4 +-
 gdbserver/linux-ppc-low.cc     |   2 +-
 gdbserver/linux-sh-low.cc      |   2 +-
 gdbserver/linux-sparc-low.cc   |   6 +-
 gdbserver/linux-tic6x-low.cc   |   2 +-
 gdbserver/linux-tile-low.cc    |   2 +-
 gdbserver/linux-x86-low.cc     |   2 +-
 gdbserver/linux-xtensa-low.cc  |   4 +-
 gdbserver/lynx-low.cc          | 139 +++----
 gdbserver/lynx-low.h           |  43 +++
 gdbserver/mem-break.cc         |  11 +-
 gdbserver/nto-low.cc           | 208 ++++-------
 gdbserver/nto-low.h            |  60 +++
 gdbserver/regcache.cc          |  16 +-
 gdbserver/remote-utils.cc      |  13 +-
 gdbserver/server.cc            |  77 ++--
 gdbserver/target.cc            | 570 ++++++++++++++++++++++++----
 gdbserver/target.h             | 554 +++++++++++++---------------
 gdbserver/tracepoint.cc        |  54 ++-
 gdbserver/win32-low.cc         | 221 +++++------
 gdbserver/win32-low.h          |  69 ++++
 31 files changed, 1830 insertions(+), 1147 deletions(-)

-- 
2.17.1

^ permalink raw reply	[flat|nested] 66+ messages in thread

end of thread, other threads:[~2020-02-21  8:08 UTC | newest]

Thread overview: 66+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-17 17:01 [PATCH v2 00/58] Turn gdbserver's process_stratum_target into a class Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 14/58] gdbserver: turn target ops 'read_memory' and 'write_memory' into methods Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 12/58] gdbserver: turn target ops 'fetch_registers' and 'store_registers' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 07/58] gdbserver: turn target op 'mourn' into a method Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 05/58] gdbserver: turn target op 'kill' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 16/58] gdbserver: turn target op 'request_interrupt' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 09/58] gdbserver: turn target op 'thread_alive' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 15/58] gdbserver: turn target op 'look_up_symbols' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 03/58] gdbserver: turn target op 'post_create_inferior' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 02/58] gdbserver: turn target op 'create_inferior' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 13/58] gdbserver: turn prepare_to_access_memory & done_accessing_memory into methods Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 27/58] gdbserver: turn target op 'qxfer_osdata' into a method Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 08/58] gdbserver: turn target op 'join' " Tankut Baris Aktemur
2020-02-17 16:59 ` [PATCH v2 10/58] gdbserver: turn target op 'resume' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 39/58] gdbserver: turn target op 'thread_stopped' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 20/58] gdbserver: turn target op '{supports_}stopped_by_sw_breakpoint' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 28/58] gdbserver: turn target op 'qxfer_siginfo' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 40/58] gdbserver: turn target op 'get_tib_address' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 33/58] gdbserver: turn target op 'handle_monitor_command' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 19/58] gdbserver: turn target ops 'insert_point' and 'remove_point' into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 26/58] gdbserver: turn target op 'hostio_last_error' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 11/58] gdbserver: turn target op 'wait' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 34/58] gdbserver: turn target op 'core_of_thread' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 06/58] gdbserver: turn target op 'detach' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 25/58] gdbserver: turn target op 'get_tls_address' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 32/58] gdbserver: turn target op 'handle_new_gdb_connection' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 52/58] gdbserver: turn breakpoint kind-related target ops into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 22/58] gdbserver: turn target op 'supports_hardware_single_step' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 54/58] gdbserver: turn target op 'supports_software_single_step' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 29/58] gdbserver: turn non-stop and async target ops into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 55/58] gdbserver: turn target op 'supports_catch_syscall' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 18/58] gdbserver: turn target op 'supports_z_point_type' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 49/58] gdbserver: turn target op 'supports_range_stepping' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 38/58] gdbserver: turn target ops 'read_pc' and 'write_pc' into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 30/58] gdbserver: turn target op 'supports_multi_process' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 42/58] gdbserver: turn target op 'stabilize_threads' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 04/58] gdbserver: turn target op 'attach' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 24/58] gdbserver: turn target op 'read_offsets' " Tankut Baris Aktemur
2020-02-19 14:09   ` Pedro Alves
2020-02-17 17:01 ` [PATCH v2 23/58] gdbserver: turn target ops 'stopped_by_watchpoint' and 'stopped_data_address' into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 44/58] gdbserver: turn target op 'emit_ops' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 43/58] gdbserver: turn fast tracepoint target ops into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 01/58] gdbserver: start turning the target ops vector into a class Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 53/58] gdbserver: turn target ops 'thread_name' and 'thread_handle' into methods Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 37/58] gdbserver: turn target op 'supports_tracepoints' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 56/58] gdbserver: turn target op 'get_ipa_tdesc_idx' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 35/58] gdbserver: turn target op 'read_loadmap' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 57/58] gdbserver: simply copy the pointer in 'set_target_ops' Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 21/58] gdbserver: turn target op '{supports_}stopped_by_hw_breakpoint' into a method Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 45/58] gdbserver: turn target op 'supports_disable_randomization' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 17/58] gdbserver: turn target op 'read_auxv' " Tankut Baris Aktemur
2020-02-17 17:01 ` [PATCH v2 47/58] gdbserver: turn target op 'supports_agent' " Tankut Baris Aktemur
2020-02-17 17:04 ` [PATCH v2 41/58] gdbserver: turn target ops 'pause_all' and 'unpause_all' into methods Tankut Baris Aktemur
2020-02-17 17:04 ` [PATCH v2 50/58] gdbserver: turn target op 'pid_to_exec_file' into a method Tankut Baris Aktemur
2020-02-17 17:04 ` [PATCH v2 48/58] gdbserver: turn btrace-related target ops into methods Tankut Baris Aktemur
2020-02-17 17:04 ` [PATCH v2 58/58] gdbserver: finish turning the target ops vector into a class Tankut Baris Aktemur
2020-02-17 17:05 ` [PATCH v2 31/58] gdbserver: turn target ops 'supports_{fork,vfork,exec}_events' into methods Tankut Baris Aktemur
2020-02-17 17:05 ` [PATCH v2 36/58] gdbserver: turn target op 'process_qsupported' into a method Tankut Baris Aktemur
2020-02-17 17:05 ` [PATCH v2 51/58] gdbserver: turn target ops 'multifs_{open, readlink, unlink}' into methods Tankut Baris Aktemur
2020-02-17 17:05 ` [PATCH v2 46/58] gdbserver: turn target op 'qxfer_libraries_svr4' into a method Tankut Baris Aktemur
2020-02-19  2:46 ` [PATCH v2 00/58] Turn gdbserver's process_stratum_target into a class Simon Marchi
2020-02-20 17:04   ` Tom Tromey
2020-02-19 14:11 ` Pedro Alves
2020-02-20 16:03   ` Aktemur, Tankut Baris
2020-02-20 17:02   ` Tom Tromey
2020-02-21  8:08     ` Aktemur, Tankut Baris

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).