1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-10-19 02:29:40 +00:00
freebsd/lib/libthr
John Baldwin d378ddab79 libthr: Disable stack unwinding on ARM.
When a thread exits, _Unwind_ForcedUnwind() is used to walk up stack
frames executing pending cleanups pushed by pthread_cleanup_push().
The cleanups are popped by thread_unwind_stop() which is passed as a
callback function to _Unwind_ForcedUnwind().

LLVM's libunwind uses a different function type for the callback on
32-bit ARM relative to all other platforms.  The previous unwind.h
header (as well as the unwind.h from libcxxrt) use the non-ARM type on
all platforms, so this has likely been broken on 32-bit arm since it
switched to using LLVM's libunwind.

For now, just disable stack unwinding on 32-bit arm to unbreak the
build until a proper fix is tested.

(cherry picked from commit bbf4df1722)
2022-02-20 13:29:59 +01:00
..
arch Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
sys spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
tests _umtx_op: fix a compat32 bug in UMTX_OP_NWAKE_PRIVATE 2020-11-17 03:34:01 +00:00
thread Use uintptr_t for return type of _Unwind_GetCFA. 2022-02-20 13:29:05 +01:00
libthr.3 libthr(3): explain some internals of the locks implementation 2021-10-08 03:42:38 +03:00
Makefile libthr: Disable stack unwinding on ARM. 2022-02-20 13:29:59 +01:00
Makefile.depend Update Makefile.depend files 2019-12-11 17:37:53 +00:00
plockstat.d Add the DTrace probe definitions for plockstat support. 2014-07-05 19:49:31 +00:00
pthread.map rtld: workaround for broken ABI 2021-04-23 14:14:08 +03:00