gdb/doc: spring clean the Python unwinders documentation
authorAndrew Burgess <aburgess@redhat.com>
Wed, 8 Mar 2023 15:26:32 +0000 (15:26 +0000)
committerAndrew Burgess <aburgess@redhat.com>
Thu, 16 Mar 2023 14:29:30 +0000 (14:29 +0000)
commita8afc8a7e156edd7405008ef3ac20f96d8d27d92
tree1fbc73c9975b9c2ef06f5016450ca35d0d197da5
parentf7a5019a918c194c576781da71e98be788d69bbb
gdb/doc: spring clean the Python unwinders documentation

The documentation for the Python Unwinders API could do with some
improvement.  The 'Unwinder Skeleton Code' has an error: it says
'unwinders' when it should say 'unwinder' in one case.

Additionally, by placing the 'Unwinder Skeleton Code' before the
section 'Registering an Unwinder' we have skipping including the
registration line in the skeleton code.  But this is confusion for
users (I think) as the skeleton code is almost complete, except for
one missing line which the user has to figure out for themselves.  By
reordering the sections, it is now obvious that the registration
should be included in the skeleton code, and the example is therefore
almost complete.

Additionally, in the example skeleton code the way in which the
frame-id was being built (using the current stack point and program
counter is (a) not correct, and (b) counter to what is laid out in the
'Unwinder Input' section when describing building a frame-id.

I've removed the incorrect code and replaced it with more generic
comments indicating what needs to be done.  As the actual actions that
need to be performed are both architecture specific, and dependent on
the function being unwound, it's almost impossible to include more
exact code here, but I think what I'm proposing is less misleading
than what we had before.

I've also added more cross references.

Reviewed-By: Eli Zaretskii <eliz@gnu.org>
gdb/doc/python.texi