From 6aa27652a77b5dba33707448c56ec538249a0f6e Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Wed, 7 Sep 2011 13:36:47 +0000 Subject: [PATCH] gdb/ * gdbthread.h (struct thread_info): Comment on field `step_after_step_resume_breakpoint'. --- gdb/ChangeLog | 5 +++++ gdb/gdbthread.h | 9 ++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 77c6c56..584959d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-09-07 Yao Qi + + * gdbthread.h (struct thread_info): Comment on field + `step_after_step_resume_breakpoint'. + 2011-09-07 Abhijit Halder * remote.c (remote_console_output): Reindent. diff --git a/gdb/gdbthread.h b/gdb/gdbthread.h index 0b19a8d..6baeb92 100644 --- a/gdb/gdbthread.h +++ b/gdb/gdbthread.h @@ -176,7 +176,14 @@ struct thread_info int stepping_over_breakpoint; /* Set to TRUE if we should finish single-stepping over a breakpoint - after hitting the current step-resume breakpoint. */ + after hitting the current step-resume breakpoint. The context here + is that GDB is to do `next' or `step' while signal arrives. + When stepping over a breakpoint and signal arrives, GDB will attempt + to skip signal handler, so it inserts a step_resume_breakpoint at the + signal return address, and resume inferior. + step_after_step_resume_breakpoint is set to TRUE at this moment in + order to keep GDB in mind that there is still a breakpoint to step over + when GDB gets back SIGTRAP from step_resume_breakpoint. */ int step_after_step_resume_breakpoint; /* This is set TRUE when a catchpoint of a shared library event -- 2.7.4