]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
unwinder: generate backtrace using SFrame format
authorWeimin Pan <weimin.pan@oracle.com>
Tue, 27 Sep 2022 21:58:04 +0000 (14:58 -0700)
committerIndu Bhagat <indu.bhagat@oracle.com>
Thu, 25 Apr 2024 22:03:50 +0000 (15:03 -0700)
commit6d551065a7add22cef04864d850400443cdd065b
tree27004ca592171343d5b5205e9f798d4af075a2f9
parentdffb4a0784f401c2aa20446abb651a4e19f34a44
unwinder: generate backtrace using SFrame format

[Changes in V4]
  - Renamed ESFRAME_* enum error code names to SFRAME_ERR_*.
  - Addressed review comments by Mike.
    - Use AC_CACHE_CHECK macro in sframe.m4
    - Delete config/sframe.m4. Add into libsframe/acinclude.m4.
    - Code fixups.
[End of changes in V4]

[Changes in V3]
  - Use the updated APIs from libsframe.
  - Use sframe_decoder_get_fixed_ra_offset on AMD64 instead of magic
    number -8.
[End of changes in V3]

[Changes in V2]
  - Minor formatting fixes.
[End of changes in V2]

A simple unwinder based on SFrame format.

The unwinder is made available via libsframebt library.

Buildsystem changes have been made to build libsframebt only when
--gsframe support is available in the assembler. These buildsystem
changes are necessary because the SFrame based unwinder the SFrame
unwind info for itself to work.

include/ChangeLog:

* sframe-backtrace-api.h: New file.

ChangeLog:

* libsframe/acinclude.m4: New file.
* libsframe/Makefile.am: Build backtrace functionality in its
own library.  Install libsframebt conditionally.
* libsframe/Makefile.in: Regenerate.
* libsframe/aclocal.m4: Regenerate.
* libsframe/configure: Regenerate.
* libsframe/configure.ac: Check if gas supports --gsframe
command line option.
* libsframe/sframe-backtrace-err.c: New file.
* libsframe/sframe-backtrace.c: New file.
include/sframe-backtrace-api.h [new file with mode: 0644]
libsframe/Makefile.am
libsframe/Makefile.in
libsframe/acinclude.m4 [new file with mode: 0644]
libsframe/aclocal.m4
libsframe/configure
libsframe/configure.ac
libsframe/sframe-backtrace-err.c [new file with mode: 0644]
libsframe/sframe-backtrace.c [new file with mode: 0644]