aboutsummaryrefslogtreecommitdiffstats
path: root/core/uclibc/pthreads-fno-omit-frame-pointer.patch
diff options
context:
space:
mode:
Diffstat (limited to 'core/uclibc/pthreads-fno-omit-frame-pointer.patch')
-rw-r--r--core/uclibc/pthreads-fno-omit-frame-pointer.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/core/uclibc/pthreads-fno-omit-frame-pointer.patch b/core/uclibc/pthreads-fno-omit-frame-pointer.patch
new file mode 100644
index 0000000000..16eea88deb
--- /dev/null
+++ b/core/uclibc/pthreads-fno-omit-frame-pointer.patch
@@ -0,0 +1,16 @@
+--- uClibc-0.9.30.orig/libpthread/linuxthreads.old/Makefile.in Thu Nov 13 09:53:27 2008
++++ uClibc-0.9.30/libpthread/linuxthreads.old/Makefile.in Thu Nov 13 10:01:35 2008
+@@ -59,6 +59,13 @@
+ libc-static-y += $(libpthread_OUT)/libc_pthread_init.o
+ libc-shared-y += $(libpthread_libc_OBJ:.o=.oS)
+
++ifeq ($(TARGET_ARCH),i386)
++# Most files must not be compiled without frame pointer since we need
++# the frame base address which is stored in %ebp unless the frame pointer
++# is optimized out.
++CFLAGS += -fno-omit-frame-pointer -mpreferred-stack-boundary=4
++endif
++
+ libpthread-static-y += $(patsubst $(libpthread_DIR)/%.c,$(libpthread_OUT)/%.o,$(libpthread_SPEC_SRC))
+ libpthread-shared-y += $(patsubst $(libpthread_DIR)/%.c,$(libpthread_OUT)/%.oS,$(libpthread_SPEC_SRC))
+