[all-commits] [llvm/llvm-project] 716723: [libunwind][SystemZ] Unwind out of signal handlers

Ulrich Weigand via All-commits all-commits at lists.llvm.org
Wed May 4 01:45:22 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 71672375fe91d602699ae2a6d6a88e910ff91b5c
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2022-05-04 (Wed, 04 May 2022)

  Changed paths:
    M libunwind/src/UnwindCursor.hpp
    M libunwind/test/signal_unwind.pass.cpp
    M libunwind/test/unwind_leaffunction.pass.cpp

  Log Message:
  [libunwind][SystemZ] Unwind out of signal handlers

Unwinding out of signal handlers currently does not work since
the sigreturn trampoline is not annotated with CFI data.

Fix this by detecting the sigreturn trampoline during unwinding
and providing appropriate unwind data manually. This follows
closely the approach used by existing code for the AArch64 target.

Reviewed by: MaskRay

Differential Revision: https://reviews.llvm.org/D124765

More information about the All-commits mailing list