[PINGv3][PATCH v3 0/2] Fix reverse nexting over recursions

Bruno Larsen blarsen@redhat.com
Thu Sep 29 07:02:33 GMT 2022


Ping

Cheers,
Bruno

On 22/09/2022 16:13, Bruno Larsen wrote:
> ping!
>
> Cheers,
> Bruno
>
> On 14/09/2022 15:16, Bruno Larsen wrote:
>> ping!
>>
>> Cheers,
>> Bruno
>>
>> On 31/08/2022 14:07, Bruno Larsen wrote:
>>> This patch series fixes gdb record/16678, GDB being unable to
>>> reverse-next over a recursive function.  However, the simple way to fix
>>> it hit a snag when I discovered that the amd64 epilogue unwinder would
>>> give a different frame id than the dwarf2 unwinder would in the rest of
>>> the function.  This patch series first change this discrepancy, then
>>> fixes the bug.
>>>
>>> Changelog for v3:
>>>      * fix some comments on the amd64_epilogue_unwinder
>>>      * fix style for the step-reverse test
>>>
>>> Changelog for v2:
>>>      * Implemented Pedro Alves's suggestion to simplify the fix
>>>      * Added the first patch to fix a regression that the simple fix
>>>        would introduce.
>>>
>>> Bruno Larsen (2):
>>>    Change calculation of frame_id by amd64 epilogue unwinder
>>>    gdb/reverse: Fix stepping over recursive functions
>>>
>>>   gdb/amd64-tdep.c                              |  10 +-
>>>   gdb/infrun.c                                  |   2 +-
>>>   .../gdb.base/unwind-on-each-insn-foo.c        |  22 +++
>>>   gdb/testsuite/gdb.base/unwind-on-each-insn.c  |  25 +++
>>>   .../gdb.base/unwind-on-each-insn.exp          | 154 
>>> ++++++++++++++++++
>>>   gdb/testsuite/gdb.reverse/step-precsave.exp   |   6 +-
>>>   gdb/testsuite/gdb.reverse/step-reverse.c      |  18 +-
>>>   gdb/testsuite/gdb.reverse/step-reverse.exp    |  58 ++++++-
>>>   8 files changed, 282 insertions(+), 13 deletions(-)
>>>   create mode 100644 gdb/testsuite/gdb.base/unwind-on-each-insn-foo.c
>>>   create mode 100644 gdb/testsuite/gdb.base/unwind-on-each-insn.c
>>>   create mode 100644 gdb/testsuite/gdb.base/unwind-on-each-insn.exp
>>>



More information about the Gdb-patches mailing list