Dont support localised optimizations this helps to have a global -O level Signed-off-by: Khem Raj Upstream-Status: Pending Index: git/include/features.h =================================================================== --- git.orig/include/features.h +++ git/include/features.h @@ -186,7 +186,6 @@ # define __need_uClibc_config_h # include # undef __need_uClibc_config_h - /* For uClibc, always optimize for size -- this should disable * a lot of expensive inlining... * TODO: this is wrong! __OPTIMIZE_SIZE__ is an indicator of 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