public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/5] Fix for an assertion when unwinding with inline frames
@ 2021-05-29 20:57 Andrew Burgess
  2021-05-29 20:57 ` [PATCH 1/5] gdb/python: handle saving user registers in a frame unwinder Andrew Burgess
                   ` (5 more replies)
  0 siblings, 6 replies; 48+ messages in thread
From: Andrew Burgess @ 2021-05-29 20:57 UTC (permalink / raw)
  To: gdb-patches

This series fixes an assertion I ran into when unwinding a stack
containing inline frames (patch #4).

I also fix an assertion from the 'set debug frame 1' code when I ran
into when trying to debug the first assertion (patch #5).

I also fix an assertion in the Python unwinder API that I ran into
while trying to write a test for the first assertion, this ended up
with me extending the functionality of the unwinder API a little,
which is nice (patch #1).

Then I needed to add some additional methods to the Python
Frame/PendingFrame API so I could write the test for the first
assertion (patch #3).

Finally, there was a small drive by clean up which related to the new
Frame/PendingFrame API extension (patch #2).

Thoughts welcome,

thanks,
Andrew

---

Andrew Burgess (5):
  gdb/python: handle saving user registers in a frame  unwinder
  gdb/python: move PyLong_From* calls into py-utils.c
  gdb/python: add PendingFrame.level and Frame.level methods
  gdb: prevent an assertion when computing the frame_id for an inline
    frame
  gdb: remove VALUE_FRAME_ID

 gdb/ChangeLog                                 |  34 +++++
 gdb/doc/ChangeLog                             |   6 +
 gdb/doc/python.texi                           |   9 ++
 gdb/frame.c                                   |  61 +++++---
 gdb/frame.h                                   |   4 -
 gdb/python/py-frame.c                         |  23 +++
 gdb/python/py-inferior.c                      |   2 +-
 gdb/python/py-unwind.c                        |  40 +++++
 gdb/python/py-utils.c                         |  12 ++
 gdb/python/python-internal.h                  |   2 +
 gdb/testsuite/ChangeLog                       |  23 +++
 .../gdb.base/inline-frame-bad-unwind.c        |  58 ++++++++
 .../gdb.base/inline-frame-bad-unwind.exp      | 139 ++++++++++++++++++
 .../gdb.base/inline-frame-bad-unwind.py       |  85 +++++++++++
 gdb/testsuite/gdb.python/py-frame.exp         |  11 ++
 .../gdb.python/py-pending-frame-level.c       |  49 ++++++
 .../gdb.python/py-pending-frame-level.exp     |  65 ++++++++
 .../gdb.python/py-pending-frame-level.py      |  55 +++++++
 .../gdb.python/py-unwind-user-regs.c          |  37 +++++
 .../gdb.python/py-unwind-user-regs.exp        |  98 ++++++++++++
 .../gdb.python/py-unwind-user-regs.py         |  72 +++++++++
 gdb/valops.c                                  |  17 ++-
 gdb/value.c                                   |   5 +-
 gdb/value.h                                   |   6 -
 24 files changed, 874 insertions(+), 39 deletions(-)
 create mode 100644 gdb/testsuite/gdb.base/inline-frame-bad-unwind.c
 create mode 100644 gdb/testsuite/gdb.base/inline-frame-bad-unwind.exp
 create mode 100644 gdb/testsuite/gdb.base/inline-frame-bad-unwind.py
 create mode 100644 gdb/testsuite/gdb.python/py-pending-frame-level.c
 create mode 100644 gdb/testsuite/gdb.python/py-pending-frame-level.exp
 create mode 100644 gdb/testsuite/gdb.python/py-pending-frame-level.py
 create mode 100644 gdb/testsuite/gdb.python/py-unwind-user-regs.c
 create mode 100644 gdb/testsuite/gdb.python/py-unwind-user-regs.exp
 create mode 100644 gdb/testsuite/gdb.python/py-unwind-user-regs.py

-- 
2.25.4


^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2021-09-22 16:46 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-29 20:57 [PATCH 0/5] Fix for an assertion when unwinding with inline frames Andrew Burgess
2021-05-29 20:57 ` [PATCH 1/5] gdb/python: handle saving user registers in a frame unwinder Andrew Burgess
2021-06-07 14:50   ` Tom Tromey
2021-06-07 16:10     ` Andrew Burgess
2021-06-07 20:38       ` Tom Tromey
2021-06-07 17:07   ` Lancelot SIX
2021-06-07 17:20     ` Simon Marchi
2021-06-07 18:01       ` Lancelot SIX
2021-06-07 18:09         ` Simon Marchi
2021-06-07 20:12         ` Andrew Burgess
2021-06-21 19:41   ` Andrew Burgess
2021-05-29 20:57 ` [PATCH 2/5] gdb/python: move PyLong_From* calls into py-utils.c Andrew Burgess
2021-06-07 14:53   ` Tom Tromey
2021-06-21 19:42     ` Andrew Burgess
2021-05-29 20:57 ` [PATCH 3/5] gdb/python: add PendingFrame.level and Frame.level methods Andrew Burgess
2021-05-30  5:55   ` Eli Zaretskii
2021-05-30 18:34   ` Andrew Burgess
2021-05-30 18:54     ` Eli Zaretskii
2021-06-07 14:57   ` Tom Tromey
2021-06-21 19:42   ` Andrew Burgess
2021-05-29 20:57 ` [PATCH 4/5] gdb: prevent an assertion when computing the frame_id for an inline frame Andrew Burgess
2021-05-29 20:57 ` [PATCH 5/5] gdb: remove VALUE_FRAME_ID Andrew Burgess
2021-06-21 19:46 ` [PATCHv2 0/2] Fix for an assertion when unwinding with inline frames Andrew Burgess
2021-06-21 19:46   ` [PATCHv2 1/2] gdb: prevent an assertion when computing the frame_id for an inline frame Andrew Burgess
2021-07-05 11:39     ` Pedro Alves
2021-07-05 14:14       ` Simon Marchi
2021-06-21 19:46   ` [PATCHv2 2/2] gdb: remove VALUE_FRAME_ID Andrew Burgess
2021-06-29 17:53     ` Simon Marchi
2021-06-30 15:18       ` Andrew Burgess
2021-07-05 14:22         ` Simon Marchi
2021-07-20  9:10   ` [PATCHv3 0/2] Fix for an assertion when unwinding with inline frames Andrew Burgess
2021-07-20  9:10     ` [PATCHv3 1/2] gdb: prevent an assertion when computing the frame_id for an inline frame Andrew Burgess
2021-07-20  9:10     ` [PATCHv3 2/2] gdb: remove VALUE_FRAME_ID Andrew Burgess
2021-07-20 21:59     ` [PATCHv3 0/2] Fix for an assertion when unwinding with inline frames Simon Marchi
2021-07-26 11:11       ` Andrew Burgess
2021-07-26 13:57         ` Simon Marchi
2021-07-27 10:06           ` Andrew Burgess
2021-07-27 10:10     ` [PATCHv4] gdb: prevent an assertion when computing the frame_id for an inline frame Andrew Burgess
2021-08-09 15:41       ` [PATCHv5] " Andrew Burgess
2021-08-23  9:41         ` Andrew Burgess
2021-08-23 10:26           ` Pedro Alves
2021-08-23 12:31             ` Andrew Burgess
2021-09-20 10:04               ` Andrew Burgess
2021-09-20 12:24         ` Pedro Alves
2021-09-21 13:52           ` Andrew Burgess
2021-09-21 13:54         ` [PATCHv6] " Andrew Burgess
2021-09-22 14:14           ` Simon Marchi
2021-09-22 16:46             ` Andrew Burgess

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).