]> git.ipfire.org Git - thirdparty/elfutils.git/commit
Add frame pointer unwinding for aarch64 and relax backtrace testcases.
authorUlf Hermann <ulf.hermann@qt.io>
Thu, 20 Apr 2017 12:41:35 +0000 (14:41 +0200)
committerMark Wielaard <mark@klomp.org>
Tue, 2 May 2017 14:37:51 +0000 (16:37 +0200)
commitd8437ed5d62a90d18739bc204b83be14188de00f
tree2783dc61f5b60e4139ba495cf43e4eed0b90ba16
parentaecc2a7052f69386109dcf17d92c8396e9067eec
Add frame pointer unwinding for aarch64 and relax backtrace testcases.

If we don't find any debug information for a given frame, we usually
cannot unwind any further. However, the binary in question might have
been compiled with frame pointers, in which case we can look up the
well known frame pointer locations in the stack snapshot and use them
to bridge the frames without debug information.

Relax the backtrace core testcases a little by allowing a duplicate
sigusr2 frame or a backtrace ending with an invalid register. Both of
which can happen if the frame pointer unwinder guesses slightly wrong.

Signed-off-by: Ulf Hermann <ulf.hermann@qt.io>
Signed-off-by: Mark Wielaard <mark@klomp.org>
backends/ChangeLog
backends/Makefile.am
backends/aarch64_init.c
backends/aarch64_unwind.c [new file with mode: 0644]
tests/ChangeLog
tests/Makefile.am
tests/backtrace-subr.sh
tests/backtrace.aarch64.fp.core.bz2 [new file with mode: 0644]
tests/backtrace.aarch64.fp.exec.bz2 [new file with mode: 0644]
tests/backtrace.c
tests/run-backtrace-fp-core-aarch64.sh [new file with mode: 0755]