forked from Imagelibrary/binutils-gdb
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.
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
#include "frame.h"
|
||||
#include "regcache.h"
|
||||
#include "target.h"
|
||||
#include "process-stratum-target.h"
|
||||
#include "value.h"
|
||||
#include "gdbcore.h"
|
||||
#include "inferior.h" /* for get_exec_file */
|
||||
@@ -71,11 +72,10 @@ static const target_info bsd_kvm_target_info = {
|
||||
Optionally specify the filename of a core dump.")
|
||||
};
|
||||
|
||||
class bsd_kvm_target final : public target_ops
|
||||
class bsd_kvm_target final : public process_stratum_target
|
||||
{
|
||||
public:
|
||||
bsd_kvm_target ()
|
||||
{ this->to_stratum = process_stratum; }
|
||||
bsd_kvm_target () = default;
|
||||
|
||||
const target_info &info () const override
|
||||
{ return bsd_kvm_target_info; }
|
||||
|
||||
Reference in New Issue
Block a user