[0/6] Inferior specific breakpoints

Message ID cover.1669634536.git.aburgess@redhat.com
Headers
Series Inferior specific breakpoints |

Message

Andrew Burgess Nov. 28, 2022, 11:25 a.m. UTC
  Adding inferior specific breakpoints to GDB.  These are like the
current thread or Ada task specific breakpoints, but cover inferiors.

Patches #1, #2, #3 are unreleated bug fixes that I ran into while
adding this feature.

Patch #4 is possibly a bug fix, or maybe a tightening of our CLI rules
for specifying thread/task breakpoints and watchpoints.  This one
could be dropped if it's not wanted.

Patch #5 is where I add inferior specific breakpoints.

Patch #6 converts the 'start' mechanism to use inferior specific
breakpoints.

---

Andrew Burgess (6):
  gdb/remote: announce thread exit events for remote targets
  gdb/testsuite: don't try to set non-stop mode on a running target
  gdb: fix display of thread condition for multi-location breakpoints
  gdb: error if 'thread' or 'task' keywords are overused
  gdb: add inferior-specific breakpoints and watchpoints
  gdb: convert the 'start' breakpoint to use inferior keyword

 gdb/NEWS                                      |  16 ++
 gdb/breakpoint.c                              | 188 +++++++++++++++---
 gdb/breakpoint.h                              |  10 +-
 gdb/doc/gdb.texinfo                           |  74 ++++++-
 gdb/doc/python.texi                           |  27 ++-
 gdb/dummy-frame.c                             |   1 +
 gdb/elfread.c                                 |   5 +-
 gdb/guile/scm-breakpoint.c                    |   5 +
 gdb/infcmd.c                                  |  10 +-
 gdb/inferior.h                                |  10 +
 gdb/infrun.c                                  |   2 +
 gdb/linespec.c                                |   4 +-
 gdb/python/py-breakpoint.c                    |  77 +++++++
 gdb/remote.c                                  |   4 +
 gdb/testsuite/gdb.ada/tasks.exp               |   4 +
 .../gdb.base/start-inferior-specific-1.c      |  32 +++
 .../gdb.base/start-inferior-specific-2.c      |  22 ++
 .../gdb.base/start-inferior-specific.exp      |  55 +++++
 gdb/testsuite/gdb.base/thread-bp-multi-loc.c  |  44 ++++
 .../gdb.base/thread-bp-multi-loc.exp          |  88 ++++++++
 gdb/testsuite/gdb.linespec/cpcompletion.exp   |   4 +-
 gdb/testsuite/gdb.linespec/explicit.exp       |   1 +
 gdb/testsuite/gdb.linespec/keywords.exp       |  10 +-
 .../gdb.multi/inferior-specific-bp-1.c        |  52 +++++
 .../gdb.multi/inferior-specific-bp-2.c        |  52 +++++
 .../gdb.multi/inferior-specific-bp.exp        | 183 +++++++++++++++++
 gdb/testsuite/gdb.python/py-breakpoint.exp    |  43 ++++
 .../gdb.threads/thread-specific-bp.exp        | 142 ++++++-------
 gdb/testsuite/gdb.threads/watchthreads2.exp   |   3 +
 gdb/testsuite/lib/completion-support.exp      |   2 +-
 30 files changed, 1041 insertions(+), 129 deletions(-)
 create mode 100644 gdb/testsuite/gdb.base/start-inferior-specific-1.c
 create mode 100644 gdb/testsuite/gdb.base/start-inferior-specific-2.c
 create mode 100644 gdb/testsuite/gdb.base/start-inferior-specific.exp
 create mode 100644 gdb/testsuite/gdb.base/thread-bp-multi-loc.c
 create mode 100644 gdb/testsuite/gdb.base/thread-bp-multi-loc.exp
 create mode 100644 gdb/testsuite/gdb.multi/inferior-specific-bp-1.c
 create mode 100644 gdb/testsuite/gdb.multi/inferior-specific-bp-2.c
 create mode 100644 gdb/testsuite/gdb.multi/inferior-specific-bp.exp


base-commit: ac8df5a1921904b3928429e696ad8b40c612f829
  

Comments

Terekhov, Mikhail via Gdb-patches Dec. 23, 2022, 10:55 a.m. UTC | #1
On Monday, November 28, 2022 12:26 PM, Andrew Burgess wrote:
> Adding inferior specific breakpoints to GDB.  These are like the
> current thread or Ada task specific breakpoints, but cover inferiors.
> 
> Patches #1, #2, #3 are unreleated bug fixes that I ran into while
> adding this feature.
> 
> Patch #4 is possibly a bug fix, or maybe a tightening of our CLI rules
> for specifying thread/task breakpoints and watchpoints.  This one
> could be dropped if it's not wanted.
> 
> Patch #5 is where I add inferior specific breakpoints.
> 
> Patch #6 converts the 'start' mechanism to use inferior specific
> breakpoints.

FWIW, I've gone through this series and posted my comments for patches
3, 5, and 6.  Patches 1, 2, and 4 looked fine to me.  I haven't run the
tests.

Regards
-Baris


Intel Deutschland GmbH
Registered Address: Am Campeon 10, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de>
Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva  
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928