From e54e59297a747bb4f396345aa090d43f155b5576 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 8 Apr 2020 14:33:35 -0600 Subject: Introduce win32_target_ops::decr_pc_after_break This adds a decr_pc_after_break member to win32_target_ops and updates the two Windows targets to set it. Note that I can't test the win32-arm-low.c change. gdbserver/ChangeLog 2020-04-08 Tom Tromey * win32-low.h (struct win32_target_ops) : New field. * win32-i386-low.c (the_low_target): Update. * win32-arm-low.c (the_low_target): Update. --- gdbserver/ChangeLog | 7 +++++++ gdbserver/win32-arm-low.cc | 1 + gdbserver/win32-i386-low.cc | 1 + gdbserver/win32-low.h | 4 ++++ 4 files changed, 13 insertions(+) (limited to 'gdbserver') diff --git a/gdbserver/ChangeLog b/gdbserver/ChangeLog index ee66a4b..24c42e2 100644 --- a/gdbserver/ChangeLog +++ b/gdbserver/ChangeLog @@ -1,5 +1,12 @@ 2020-04-08 Tom Tromey + * win32-low.h (struct win32_target_ops) : New + field. + * win32-i386-low.c (the_low_target): Update. + * win32-arm-low.c (the_low_target): Update. + +2020-04-08 Tom Tromey + * win32-low.h (win32_process_target::read_pc) (win32_process_target::write_pc): Declare. * win32-low.c (win32_process_target::read_pc) diff --git a/gdbserver/win32-arm-low.cc b/gdbserver/win32-arm-low.cc index 7720011..238ee4b 100644 --- a/gdbserver/win32-arm-low.cc +++ b/gdbserver/win32-arm-low.cc @@ -148,6 +148,7 @@ struct win32_target_ops the_low_target = { NULL, /* single_step */ (const unsigned char *) &arm_wince_breakpoint, arm_wince_breakpoint_len, + 0, arm_win32_get_pc, arm_win32_set_pc, /* Watchpoint related functions. See target.h for comments. */ diff --git a/gdbserver/win32-i386-low.cc b/gdbserver/win32-i386-low.cc index eac15b5..48893af 100644 --- a/gdbserver/win32-i386-low.cc +++ b/gdbserver/win32-i386-low.cc @@ -506,6 +506,7 @@ struct win32_target_ops the_low_target = { i386_single_step, &i386_win32_breakpoint, i386_win32_breakpoint_len, + 1, i386_win32_get_pc, i386_win32_set_pc, i386_supports_z_point_type, diff --git a/gdbserver/win32-low.h b/gdbserver/win32-low.h index 56ff8a9..d2b39a4 100644 --- a/gdbserver/win32-low.h +++ b/gdbserver/win32-low.h @@ -63,6 +63,10 @@ struct win32_target_ops const unsigned char *breakpoint; int breakpoint_len; + /* Amount by which to decrement the PC after a breakpoint is + hit. */ + int decr_pc_after_break; + /* Get the PC register from REGCACHE. */ CORE_ADDR (*get_pc) (struct regcache *regcache); /* Set the PC register in REGCACHE. */ -- cgit v1.1