X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdbserver%2Flinux-low.h;h=697b4af53a4f3ac79b94dfb0691b22cc4d9c2265;hb=aa8d21c9bb43baaa35f456a3d371942a26cdce4e;hp=0af3c3cc387858b23a5d65315fe58ebc87b33728;hpb=ef0478f6112ede4da9b70e07aa3124f0d2faf108;p=deliverable%2Fbinutils-gdb.git diff --git a/gdbserver/linux-low.h b/gdbserver/linux-low.h index 0af3c3cc38..697b4af53a 100644 --- a/gdbserver/linux-low.h +++ b/gdbserver/linux-low.h @@ -131,11 +131,6 @@ struct lwp_info; struct linux_target_ops { - /* Architecture-specific setup. */ - void (*arch_setup) (void); - - const struct regs_info *(*regs_info) (void); - /* Return 0 if we can fetch/store the register, 1 if we cannot fetch/store the register. */ int (*cannot_fetch_register) (int); @@ -481,6 +476,10 @@ public: int get_ipa_tdesc_idx () override; + /* Return the information to access registers. This has public + visibility because proc-service uses it. */ + virtual const regs_info *get_regs_info () = 0; + private: /* Handle a GNU/Linux extended wait response. If we see a clone, @@ -564,8 +563,14 @@ private: /* Move THREAD out of the jump pad. */ void move_out_of_jump_pad (thread_info *thread); + /* Call low_arch_setup on THREAD. */ + void arch_setup_thread (thread_info *thread); + protected: /* The architecture-specific "low" methods are listed below. */ + + /* Architecture-specific setup for the current thread. */ + virtual void low_arch_setup () = 0; }; extern linux_process_target *the_linux_target;