diff options
author | William Pitcock <nenolod@dereferenced.org> | 2013-06-01 18:14:29 -0500 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2013-06-01 18:14:29 -0500 |
commit | 627bf322f50634e756fb656b4f5f4f5ebf5997c2 (patch) | |
tree | f14a9cbf75de5a6fd543246418822d3a3adad974 /main/libc0.9.32/avoid-forced-unwind.patch | |
parent | 6267268090d5c23664a5b13dfe02eb3594d5e5db (diff) | |
download | aports-627bf322f50634e756fb656b4f5f4f5ebf5997c2.tar.bz2 aports-627bf322f50634e756fb656b4f5f4f5ebf5997c2.tar.xz |
main/libc0.9.32: avoid libgcc unwind functions in nptl
Normally for 'performance', nptl uses the _Unwind_ForcedUnwind() function,
which is provided by GCC. However, this function depends on libunwind tracking
all register state, which neither libunwind itself (which we do not want as a
core dependency) or GCC's libunwind support register state on some newer x86
CPUs fully.
Thusly, we turn off the unwind-using code and return to using the traditional
cleanup functions.
Diffstat (limited to 'main/libc0.9.32/avoid-forced-unwind.patch')
-rw-r--r-- | main/libc0.9.32/avoid-forced-unwind.patch | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/main/libc0.9.32/avoid-forced-unwind.patch b/main/libc0.9.32/avoid-forced-unwind.patch new file mode 100644 index 0000000000..044e2ffdd7 --- /dev/null +++ b/main/libc0.9.32/avoid-forced-unwind.patch @@ -0,0 +1,10 @@ +--- uClibc-0.9.33.2.orig/Rules.mak ++++ uClibc-0.9.33.2/Rules.mak +@@ -707,7 +707,6 @@ + ifeq ($(UCLIBC_HAS_THREADS),y) + ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y) + PTNAME := nptl +- CFLAGS += -DHAVE_FORCED_UNWIND + else + ifeq ($(LINUXTHREADS_OLD),y) + PTNAME := linuxthreads.old |