From 7d186bc04245c5757f396c2d4f8f89f24818628e Mon Sep 17 00:00:00 2001 From: Hannes Domani Date: Fri, 24 Apr 2020 17:23:59 +0200 Subject: Implement debugging of WOW64 processes in gdbserver gdbserver/ChangeLog: 2020-04-30 Hannes Domani * configure.srv (srv_tgtobj): Add arch/i386.o. * win32-arm-low.cc (arm_num_regs): New function. (struct win32_target_ops): Use arm_num_regs. * win32-i386-low.cc (win32_get_current_dr): Adapt for WOW64 processes. (i386_get_thread_context): Likewise. (i386_prepare_to_resume): Likewise. (i386_thread_added): Likewise. (i386_single_step): Likewise. (i386_fetch_inferior_register): Likewise. (i386_store_inferior_register): Likewise. (i386_arch_setup): Likewise. (i386_win32_num_regs): New function. (struct win32_target_ops): Use i386_win32_num_regs. * win32-low.cc (win32_get_thread_context): Adapt for WOW64 processes. (win32_require_context): Likewise. (child_add_thread): Likewise. (do_initial_child_stuff): Likewise. (continue_one_thread): Likewise. (win32_process_target::resume): Likewise. (load_psapi): Likewise. (win32_add_all_dlls): Likewise. (maybe_adjust_pc): Likewise. (win32_process_target::qxfer_siginfo): Likewise. (initialize_low): Likewise. * win32-low.h (struct win32_target_ops): Change num_regs to callback function. --- gdbserver/configure.srv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gdbserver/configure.srv') diff --git a/gdbserver/configure.srv b/gdbserver/configure.srv index 7acf229..9a027e4 100644 --- a/gdbserver/configure.srv +++ b/gdbserver/configure.srv @@ -397,14 +397,14 @@ case "${gdbserver_host}" in srv_tgtobj="x86-low.o nat/x86-dregs.o i387-fp.o" srv_tgtobj="${srv_tgtobj} win32-low.o win32-i386-low.o" srv_tgtobj="${srv_tgtobj} nat/windows-nat.o" - srv_tgtobj="${srv_tgtobj} arch/amd64.o" + srv_tgtobj="${srv_tgtobj} arch/amd64.o arch/i386.o" srv_mingw=yes ;; x86_64-*-cygwin*) srv_regobj="" srv_tgtobj="x86-low.o nat/x86-dregs.o i387-fp.o" srv_tgtobj="${srv_tgtobj} win32-low.o win32-i386-low.o" srv_tgtobj="${srv_tgtobj} nat/windows-nat.o" - srv_tgtobj="${srv_tgtobj} arch/amd64.o" + srv_tgtobj="${srv_tgtobj} arch/amd64.o arch/i386.o" ;; xtensa*-*-linux*) srv_regobj=reg-xtensa.o -- cgit v1.1