aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch')
-rw-r--r--meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch179
1 files changed, 179 insertions, 0 deletions
diff --git a/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch b/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch
new file mode 100644
index 0000000000..bee251c335
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch
@@ -0,0 +1,179 @@
+Dont support localised optimizations this helps to have a global -O level
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+Index: git/libpthread/nptl/pthread_mutex_timedlock.c
+===================================================================
+--- git.orig/libpthread/nptl/pthread_mutex_timedlock.c
++++ git/libpthread/nptl/pthread_mutex_timedlock.c
+@@ -29,7 +29,9 @@
+ * error: can't find a register in class ‘GENERAL_REGS’ while reloading ‘asm’
+ */
+ int
++#ifndef __OPTIMIZE__
+ attribute_optimize("Os")
++#endif
+ pthread_mutex_timedlock (
+ pthread_mutex_t *mutex,
+ const struct timespec *abstime)
+Index: git/libc/sysdeps/linux/powerpc/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/powerpc/bits/mathinline.h
++++ git/libc/sysdeps/linux/powerpc/bits/mathinline.h
+@@ -27,7 +27,7 @@
+ #ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ #else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ #endif /* __cplusplus */
+
+ #if defined __GNUC__ && !defined _SOFT_FLOAT
+Index: git/libc/sysdeps/linux/alpha/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/alpha/bits/mathinline.h
++++ git/libc/sysdeps/linux/alpha/bits/mathinline.h
+@@ -25,7 +25,7 @@
+ #ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ #else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ #endif
+
+ #if defined __USE_ISOC99 && defined __GNUC__ && !__GNUC_PREREQ(3,0)
+Index: git/libc/sysdeps/linux/common/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/common/bits/socket.h
++++ git/libc/sysdeps/linux/common/bits/socket.h
+@@ -302,7 +302,7 @@ extern struct cmsghdr *__cmsg_nxthdr (st
+ libc_hidden_proto(__cmsg_nxthdr)
+ #ifdef __USE_EXTERN_INLINES
+ # ifndef _EXTERN_INLINE
+-# define _EXTERN_INLINE extern __inline
++# define _EXTERN_INLINE __extern_inline
+ # endif
+ _EXTERN_INLINE struct cmsghdr *
+ __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg))
+Index: git/libc/sysdeps/linux/i386/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/i386/bits/mathinline.h
++++ git/libc/sysdeps/linux/i386/bits/mathinline.h
+@@ -26,7 +26,7 @@
+ #ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ #else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ #endif
+
+
+Index: git/libc/sysdeps/linux/ia64/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/ia64/bits/mathinline.h
++++ git/libc/sysdeps/linux/ia64/bits/mathinline.h
+@@ -24,7 +24,7 @@
+ #ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ #else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ #endif
+
+ #if defined __USE_ISOC99 && defined __GNUC__ && __GNUC__ >= 2
+Index: git/libc/sysdeps/linux/m68k/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/m68k/bits/mathinline.h
++++ git/libc/sysdeps/linux/m68k/bits/mathinline.h
+@@ -92,7 +92,7 @@
+ # ifdef __cplusplus
+ # define __m81_inline __inline
+ # else
+-# define __m81_inline extern __inline
++# define __m81_inline __extern_inline
+ # endif
+ # define __M81_MATH_INLINES 1
+ #endif
+@@ -351,14 +351,14 @@ __inline_functions (long double,l)
+ /* Note that there must be no whitespace before the argument passed for
+ NAME, to make token pasting work correctly with -traditional. */
+ # define __inline_forward_c(rettype, name, args1, args2) \
+-extern __inline rettype __attribute__((__const__)) \
++__extern_inline rettype __attribute__((__const__)) \
+ name args1 \
+ { \
+ return __CONCAT(__,name) args2; \
+ }
+
+ # define __inline_forward(rettype, name, args1, args2) \
+-extern __inline rettype name args1 \
++__extern_inline rettype name args1 \
+ { \
+ return __CONCAT(__,name) args2; \
+ }
+Index: git/libc/sysdeps/linux/mips/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/mips/bits/socket.h
++++ git/libc/sysdeps/linux/mips/bits/socket.h
+@@ -307,7 +307,7 @@ extern struct cmsghdr *__cmsg_nxthdr (st
+ libc_hidden_proto(__cmsg_nxthdr)
+ #ifdef __USE_EXTERN_INLINES
+ # ifndef _EXTERN_INLINE
+-# define _EXTERN_INLINE extern __inline
++# define _EXTERN_INLINE __extern_inline
+ # endif
+ _EXTERN_INLINE struct cmsghdr *
+ __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg))
+Index: git/libc/sysdeps/linux/mips/sys/tas.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/mips/sys/tas.h
++++ git/libc/sysdeps/linux/mips/sys/tas.h
+@@ -30,7 +30,7 @@ extern int _test_and_set (int *p, int v)
+ #ifdef __USE_EXTERN_INLINES
+
+ # ifndef _EXTERN_INLINE
+-# define _EXTERN_INLINE extern __inline
++# define _EXTERN_INLINE __extern_inline
+ # endif
+
+ _EXTERN_INLINE int
+Index: git/libc/sysdeps/linux/sparc/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/sparc/bits/mathinline.h
++++ git/libc/sysdeps/linux/sparc/bits/mathinline.h
+@@ -131,7 +131,7 @@
+ # ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ # else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ # endif /* __cplusplus */
+
+ /* The gcc, version 2.7 or below, has problems with all this inlining
+Index: git/libc/sysdeps/linux/sparc/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/sparc/bits/socket.h
++++ git/libc/sysdeps/linux/sparc/bits/socket.h
+@@ -292,7 +292,7 @@ extern struct cmsghdr *__cmsg_nxthdr (st
+ libc_hidden_proto(__cmsg_nxthdr)
+ #ifdef __USE_EXTERN_INLINES
+ # ifndef _EXTERN_INLINE
+-# define _EXTERN_INLINE extern __inline
++# define _EXTERN_INLINE __extern_inline
+ # endif
+ _EXTERN_INLINE struct cmsghdr *
+ __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg))
+Index: git/libc/sysdeps/linux/x86_64/bits/mathinline.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/x86_64/bits/mathinline.h
++++ git/libc/sysdeps/linux/x86_64/bits/mathinline.h
+@@ -25,7 +25,7 @@
+ #ifdef __cplusplus
+ # define __MATH_INLINE __inline
+ #else
+-# define __MATH_INLINE extern __inline
++# define __MATH_INLINE __extern_inline
+ #endif
+
+