Introduce process_stratum_target
authorPedro Alves <palves@redhat.com>
Fri, 30 Nov 2018 14:53:39 +0000 (14:53 +0000)
committerPedro Alves <palves@redhat.com>
Fri, 30 Nov 2018 16:27:26 +0000 (16:27 +0000)
commit3b3dac9b3fd916d73726c7e5508f057574f74d19
tree5691452d3a2a73ab852822297b1b165c8879a5c3
parentc180496d2ac268c06c13600f729d02ca4266e6ea
Introduce process_stratum_target

This adds a base class that all process_stratum targets inherit from.

default_thread_address_space/default_thread_architecture only make
sense for process_stratum targets, so they are transformed to
process_stratum_target methods/overrides.

gdb/ChangeLog:
2018-11-30  Pedro Alves  <palves@redhat.com>

* Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
* bsd-kvm.c: Include "process-stratum-target.h".
(bsd_kvm_target): Now inherits from process_stratum_target.
(bsd_kvm_target::bsd_kvm_target): Default it.
* corelow.c: Include "process-stratum-target.h".
(core_target): Now inherits from process_stratum_target.
(core_target::core_target): Don't set to_stratum here.
* inf-child.c (inf_child_target::inf_child_target): Delete.
* inf-child.h: Include "process-stratum-target.h".
(inf_child_target): Inherit from process_stratum_target.
(inf_child_target) <inf_child_target>: Default it.
<can_async_p, supports_non_stop, supports_disable_randomization>:
Delete overrides.
* process-stratum-target.c: New file.
* process-stratum-target.h: New file.
* remote-sim.c: Include "process-stratum-target.h".
(gdbsim_target): Inherit from process_stratum_target.
<gdbsim_target>: Default it.
* remote.c: Include "process-stratum-target.h".
(remote_target): Inherit from process_stratum_target.
<remote_target>: Default it.
* target.c (default_thread_address_space)
(default_thread_architecture): Delete.
* target.h (target_ops) <thread_architecture>: Now returns NULL by
default.
<thread_address_space>: Ditto.
* test-target.h: Include "process-stratum-target.h" instead of
"target.h".
(test_target_ops): Inherit from process_stratum_target.
<test_target_ops>: Default it.
* tracefile.c (tracefile_target::tracefile_target): Delete.
* tracefile.h: Include "process-stratum-target.h".
(tracefile_target): Inherit from process_stratum_target.
<tracefile_target>: Default it.
* target-delegates.c: Regenerate.
16 files changed:
gdb/ChangeLog
gdb/Makefile.in
gdb/bsd-kvm.c
gdb/corelow.c
gdb/inf-child.c
gdb/inf-child.h
gdb/process-stratum-target.c [new file with mode: 0644]
gdb/process-stratum-target.h [new file with mode: 0644]
gdb/remote-sim.c
gdb/remote.c
gdb/target-delegates.c
gdb/target.c
gdb/target.h
gdb/test-target.h
gdb/tracefile.c
gdb/tracefile.h