freebsd-dev/lib/libthr
John Baldwin bbf4df1722 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.
2022-02-10 12:47:08 -08:00
..
arch mips: remove pthread support 2021-12-31 00:14:53 -07: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-01-27 10:53:21 -08:00
libthr.3 libthr(3): explain some internals of the locks implementation 2021-10-05 06:39:53 +03:00
Makefile libthr: Disable stack unwinding on ARM. 2022-02-10 12:47:08 -08:00
Makefile.depend Update Makefile.depend files 2019-12-11 17:37:53 +00:00
plockstat.d
pthread.map rtld: workaround for broken ABI 2021-04-10 17:33:33 +03:00