aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2016-04-13 14:34:00 +0100
committerPedro Alves <palves@redhat.com>2016-04-13 14:34:00 +0100
commit3a00c80277a54abe0b286a6e8babc8fe50120205 (patch)
treec8747b5a7de51c8d1f402f8bd8840c302ae03493 /gdb/gdbserver
parente26b7e41652e288dfdb4c48121bba470c4774150 (diff)
downloadgdb-3a00c80277a54abe0b286a6e8babc8fe50120205.zip
gdb-3a00c80277a54abe0b286a6e8babc8fe50120205.tar.gz
gdb-3a00c80277a54abe0b286a6e8babc8fe50120205.tar.bz2
Fix PR remote/19840: gdb crashes on reverse-stepi
Reverse debugging against a remote target that does reverse debugging itself (with the bs/bc packets) always trips on: (gdb) target remote localhost:... (gdb) reverse-stepi ../../gdb/target.c:602: internal-error: default_execution_direction: to_execution_direction must be implemented for reverse async I missed adding a to_execution_direction method to remote.c in commit 3223143295b5 (Adds target_execution_direction to make record targets support async mode), GDB 7.4 time. Later, GDB 7.8 switched to target-async on by default, making the regression user-visible by default too. Fix is simply to add the missing to_execution_direction implementation to target remote. Tested by Andi Kleen against Simics. gdb/ChangeLog: 2016-04-13 Pedro Alves <palves@redhat.com> PR remote/19840 * remote.c (struct remote_state) <last_resume_exec_dir>: New field. (new_remote_state): Default last_resume_exec_dir to EXEC_FORWARD. (remote_open_1): Reset last_resume_exec_dir to EXEC_FORWARD. (remote_resume): Store the last execution direction. (remote_execution_direction): New function. (init_remote_ops): Install it as to_execution_direction target_ops method.
Diffstat (limited to 'gdb/gdbserver')
0 files changed, 0 insertions, 0 deletions