source:
clfs-embedded/patches/uClibc-0.9.30.1-branch_update-1.patch@
8172859
Last change on this file since 8172859 was f5994ee, checked in by , 16 years ago | |
---|---|
|
|
File size: 36.4 KB |
-
include/math.h
Submitted By: Jim Gifford (jim at cross-lfs dot org) Date: 03-28-2009 Initial Package Version: 0.9.30.1 Origin: Upstream Upstream Status: Applied Description: This is a branch update for uClibc-0.9.30.1, and should be rechecked periodically. diff -Naur uClibc-0.9.30.1.orig/include/math.h uClibc-0.9.30.1/include/math.h
old new 118 118 # undef __MATH_PRECNAME 119 119 120 120 # if (__STDC__ - 0 || __GNUC__ - 0) \ 121 && ( defined __UCLIBC_HAS_LONG_DOUBLE_MATH__|| defined __LDBL_COMPAT)121 && (!defined __NO_LONG_DOUBLE_MATH || defined __LDBL_COMPAT) 122 122 # ifdef __LDBL_COMPAT 123 123 124 124 # ifdef __USE_ISOC99 … … 230 230 }; 231 231 232 232 /* Return number of classification appropriate for X. */ 233 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__233 # ifdef __NO_LONG_DOUBLE_MATH 234 234 # define fpclassify(x) \ 235 235 (sizeof (x) == sizeof (float) ? __fpclassifyf (x) : __fpclassify (x)) 236 236 # else … … 242 242 # endif 243 243 244 244 /* Return nonzero value if sign of X is negative. */ 245 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__245 # ifdef __NO_LONG_DOUBLE_MATH 246 246 # define signbit(x) \ 247 247 (sizeof (x) == sizeof (float) ? __signbitf (x) : __signbit (x)) 248 248 # else … … 254 254 # endif 255 255 256 256 /* Return nonzero value if X is not +-Inf or NaN. */ 257 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__257 # ifdef __NO_LONG_DOUBLE_MATH 258 258 # define isfinite(x) \ 259 259 (sizeof (x) == sizeof (float) ? __finitef (x) : __finite (x)) 260 260 # else … … 270 270 271 271 /* Return nonzero value if X is a NaN. We could use `fpclassify' but 272 272 we already have this functions `__isnan' and it is faster. */ 273 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__273 # ifdef __NO_LONG_DOUBLE_MATH 274 274 # define isnan(x) \ 275 275 (sizeof (x) == sizeof (float) ? __isnanf (x) : __isnan (x)) 276 276 # else … … 282 282 # endif 283 283 284 284 /* Return nonzero value is X is positive or negative infinity. */ 285 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__285 # ifdef __NO_LONG_DOUBLE_MATH 286 286 # define isinf(x) \ 287 287 (sizeof (x) == sizeof (float) ? __isinff (x) : __isinf (x)) 288 288 # else -
include/tgmath.h
diff -Naur uClibc-0.9.30.1.orig/include/tgmath.h uClibc-0.9.30.1/include/tgmath.h
old new 36 36 37 37 #if __GNUC_PREREQ (2, 7) 38 38 39 # if ndef __UCLIBC_HAS_LONG_DOUBLE_MATH__39 # ifdef __NO_LONG_DOUBLE_MATH 40 40 # define __tgml(fct) fct 41 41 # else 42 42 # define __tgml(fct) fct ## l -
ldso/ldso/arm/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/arm/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/arm/dl-sysdep.h
old new 15 15 GOT_BASE[1] = (unsigned long) MODULE; \ 16 16 } 17 17 18 static __ inline__unsigned long arm_modulus(unsigned long m, unsigned long p)18 static __always_inline unsigned long arm_modulus(unsigned long m, unsigned long p) 19 19 { 20 20 unsigned long i,t,inc; 21 21 i=p; t=0; … … 72 72 first element of the GOT. We used to use the PIC register to do this 73 73 without a constant pool reference, but GCC 4.2 will use a pseudo-register 74 74 for the PIC base, so it may not be in r10. */ 75 static __ inline__Elf32_Addr __attribute__ ((unused))75 static __always_inline Elf32_Addr __attribute__ ((unused)) 76 76 elf_machine_dynamic (void) 77 77 { 78 78 Elf32_Addr dynamic; … … 104 104 } 105 105 106 106 /* Return the run-time load address of the shared object. */ 107 static __ inline__Elf32_Addr __attribute__ ((unused))107 static __always_inline Elf32_Addr __attribute__ ((unused)) 108 108 elf_machine_load_address (void) 109 109 { 110 110 extern void __dl_start __asm__ ("_dl_start"); … … 128 128 return pcrel_addr - got_addr; 129 129 } 130 130 131 static __ inline__void131 static __always_inline void 132 132 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 133 133 Elf32_Word relative_count) 134 134 { -
ldso/ldso/bfin/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/bfin/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/bfin/dl-sysdep.h
old new 213 213 #endif 214 214 215 215 #include <elf.h> 216 static __ inline__void216 static __always_inline void 217 217 elf_machine_relative (DL_LOADADDR_TYPE load_off, const Elf32_Addr rel_addr, 218 218 Elf32_Word relative_count) 219 219 { -
ldso/ldso/cris/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/cris/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/cris/dl-sysdep.h
old new 39 39 || ((type) == R_CRIS_GLOB_DAT)) * ELF_RTYPE_CLASS_PLT) \ 40 40 | (((type) == R_CRIS_COPY) * ELF_RTYPE_CLASS_COPY)) 41 41 42 static __ inline__Elf32_Addr42 static __always_inline Elf32_Addr 43 43 elf_machine_dynamic(void) 44 44 { 45 45 /* Don't just set this to an asm variable "r0" since that's not logical … … 61 61 there's some other symbol we could use, that we don't *have* to force a 62 62 GOT entry for. */ 63 63 64 static __ inline__Elf32_Addr64 static __always_inline Elf32_Addr 65 65 elf_machine_load_address(void) 66 66 { 67 67 Elf32_Addr gotaddr_diff; … … 95 95 return gotaddr_diff; 96 96 } 97 97 98 static __ inline__void98 static __always_inline void 99 99 elf_machine_relative(Elf32_Addr load_off, const Elf32_Addr rel_addr, 100 100 Elf32_Word relative_count) 101 101 { -
ldso/ldso/i386/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/i386/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/i386/dl-sysdep.h
old new 42 42 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 43 43 first element of the GOT. This must be inlined in a function which 44 44 uses global data. */ 45 static __ inline__Elf32_Addr elf_machine_dynamic (void) attribute_unused;46 static __ inline__Elf32_Addr45 static __always_inline Elf32_Addr elf_machine_dynamic (void) attribute_unused; 46 static __always_inline Elf32_Addr 47 47 elf_machine_dynamic (void) 48 48 { 49 49 register Elf32_Addr *got __asm__ ("%ebx"); … … 52 52 53 53 54 54 /* Return the run-time load address of the shared object. */ 55 static __ inline__Elf32_Addr elf_machine_load_address (void) attribute_unused;56 static __ inline__Elf32_Addr55 static __always_inline Elf32_Addr elf_machine_load_address (void) attribute_unused; 56 static __always_inline Elf32_Addr 57 57 elf_machine_load_address (void) 58 58 { 59 59 /* It doesn't matter what variable this is, the reference never makes … … 66 66 return addr; 67 67 } 68 68 69 static __ inline__void69 static __always_inline void 70 70 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 71 71 Elf32_Word relative_count) 72 72 { -
ldso/ldso/m68k/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/m68k/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/m68k/dl-sysdep.h
old new 41 41 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 42 42 first element of the GOT. This must be inlined in a function which 43 43 uses global data. */ 44 static __ inline__Elf32_Addr44 static __always_inline Elf32_Addr 45 45 elf_machine_dynamic (void) 46 46 { 47 47 register Elf32_Addr *got __asm__ ("%a5"); … … 50 50 51 51 52 52 /* Return the run-time load address of the shared object. */ 53 static __ inline__Elf32_Addr53 static __always_inline Elf32_Addr 54 54 elf_machine_load_address (void) 55 55 { 56 56 Elf32_Addr addr; … … 60 60 return addr; 61 61 } 62 62 63 static __ inline__void63 static __always_inline void 64 64 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 65 65 Elf32_Word relative_count) 66 66 { -
ldso/ldso/mips/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/mips/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/mips/dl-sysdep.h
old new 163 163 164 164 #define OFFSET_GP_GOT 0x7ff0 165 165 166 static __ inline__ElfW(Addr) *166 static __always_inline ElfW(Addr) * 167 167 elf_mips_got_from_gpreg (ElfW(Addr) gpreg) 168 168 { 169 169 /* FIXME: the offset of gp from GOT may be system-dependent. */ … … 173 173 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 174 174 first element of the GOT. This must be inlined in a function which 175 175 uses global data. We assume its $gp points to the primary GOT. */ 176 static __ inline__ElfW(Addr)176 static __always_inline ElfW(Addr) 177 177 elf_machine_dynamic (void) 178 178 { 179 179 register ElfW(Addr) gp __asm__ ("$28"); … … 192 192 #endif 193 193 194 194 /* Return the run-time load address of the shared object. */ 195 static __ inline__ElfW(Addr)195 static __always_inline ElfW(Addr) 196 196 elf_machine_load_address (void) 197 197 { 198 198 ElfW(Addr) addr; … … 208 208 return addr; 209 209 } 210 210 211 static __ inline__void211 static __always_inline void 212 212 elf_machine_relative (ElfW(Addr) load_off, const ElfW(Addr) rel_addr, 213 213 ElfW(Word) relative_count) 214 214 { -
ldso/ldso/powerpc/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/powerpc/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/powerpc/dl-sysdep.h
old new 90 90 #define ELF_MACHINE_PLTREL_OVERLAP 1 91 91 92 92 /* Return the value of the GOT pointer. */ 93 static __ inline__Elf32_Addr * __attribute__ ((const))93 static __always_inline Elf32_Addr * __attribute__ ((const)) 94 94 ppc_got (void) 95 95 { 96 96 Elf32_Addr *got; … … 109 109 110 110 /* Return the link-time address of _DYNAMIC, stored as 111 111 the first value in the GOT. */ 112 static __ inline__Elf32_Addr __attribute__ ((const))112 static __always_inline Elf32_Addr __attribute__ ((const)) 113 113 elf_machine_dynamic (void) 114 114 { 115 115 return *ppc_got(); 116 116 } 117 117 118 118 /* Return the run-time load address of the shared object. */ 119 static __ inline__Elf32_Addr __attribute__ ((const))119 static __always_inline Elf32_Addr __attribute__ ((const)) 120 120 elf_machine_load_address (void) 121 121 { 122 122 Elf32_Addr *branchaddr; … … 164 164 return runtime_dynamic - elf_machine_dynamic (); 165 165 } 166 166 167 static __ inline__void167 static __always_inline void 168 168 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 169 169 Elf32_Word relative_count) 170 170 { -
ldso/ldso/sh/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/sh/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/sh/dl-sysdep.h
old new 25 25 struct elf_resolve; 26 26 extern unsigned long _dl_linux_resolver(struct elf_resolve * tpnt, int reloc_entry); 27 27 28 static __ inline__unsigned int28 static __always_inline unsigned int 29 29 _dl_urem(unsigned int n, unsigned int base) 30 30 { 31 31 int res; … … 100 100 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 101 101 first element of the GOT. This must be inlined in a function which 102 102 uses global data. */ 103 static __ inline__Elf32_Addr __attribute__ ((unused))103 static __always_inline Elf32_Addr __attribute__ ((unused)) 104 104 elf_machine_dynamic (void) 105 105 { 106 106 register Elf32_Addr *got; … … 109 109 } 110 110 111 111 /* Return the run-time load address of the shared object. */ 112 static __ inline__Elf32_Addr __attribute__ ((unused))112 static __always_inline Elf32_Addr __attribute__ ((unused)) 113 113 elf_machine_load_address (void) 114 114 { 115 115 Elf32_Addr addr; … … 151 151 } \ 152 152 } 153 153 154 static __ inline__void154 static __always_inline void 155 155 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 156 156 Elf32_Word relative_count) 157 157 { -
ldso/ldso/sh64/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/sh64/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/sh64/dl-sysdep.h
old new 42 42 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 43 43 first element of the GOT. This must be inlined in a function which 44 44 uses global data. */ 45 static __ inline__Elf32_Addr elf_machine_dynamic(void)45 static __always_inline Elf32_Addr elf_machine_dynamic(void) 46 46 { 47 47 register Elf32_Addr *got; 48 48 … … 70 70 } 71 71 72 72 /* Return the run-time load address of the shared object. */ 73 static __ inline__Elf32_Addr elf_machine_load_address(void)73 static __always_inline Elf32_Addr elf_machine_load_address(void) 74 74 { 75 75 Elf32_Addr addr; 76 76 … … 123 123 } \ 124 124 } 125 125 126 static __ inline__void126 static __always_inline void 127 127 elf_machine_relative(Elf32_Addr load_off, const Elf32_Addr rel_addr, 128 128 Elf32_Word relative_count) 129 129 { -
ldso/ldso/sparc/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/sparc/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/sparc/dl-sysdep.h
old new 49 49 50 50 #ifndef COMPILE_ASM 51 51 /* Cheap modulo implementation, taken from arm/ld_sysdep.h. */ 52 static __ inline__unsigned long52 static __always_inline unsigned long 53 53 sparc_mod(unsigned long m, unsigned long p) 54 54 { 55 55 unsigned long i, t, inc; … … 127 127 /* Return the link-time address of _DYNAMIC. Conveniently, this is the 128 128 first element of the GOT. This must be inlined in a function which 129 129 uses global data. */ 130 static __ inline__Elf32_Addr130 static __always_inline Elf32_Addr 131 131 elf_machine_dynamic (void) 132 132 { 133 133 register Elf32_Addr *got __asm__ ("%l7"); … … 138 138 } 139 139 140 140 /* Return the run-time load address of the shared object. */ 141 static __ inline__Elf32_Addr141 static __always_inline Elf32_Addr 142 142 elf_machine_load_address (void) 143 143 { 144 144 register Elf32_Addr *pc __asm__ ("%o7"), *got __asm__ ("%l7"); … … 157 157 return (Elf32_Addr) got - *got + (pc[2] - pc[3]) * 4 - 4; 158 158 } 159 159 160 static __ inline__void160 static __always_inline void 161 161 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 162 162 Elf32_Word relative_count) 163 163 { -
ldso/ldso/xtensa/dl-sysdep.h
diff -Naur uClibc-0.9.30.1.orig/ldso/ldso/xtensa/dl-sysdep.h uClibc-0.9.30.1/ldso/ldso/xtensa/dl-sysdep.h
old new 87 87 (((type) == R_XTENSA_JMP_SLOT) * ELF_RTYPE_CLASS_PLT) 88 88 89 89 /* Return the link-time address of _DYNAMIC. */ 90 static __ inline__Elf32_Addr90 static __always_inline Elf32_Addr 91 91 elf_machine_dynamic (void) 92 92 { 93 93 /* This function is only used while bootstrapping the runtime linker. … … 97 97 } 98 98 99 99 /* Return the run-time load address of the shared object. */ 100 static __ inline__Elf32_Addr100 static __always_inline Elf32_Addr 101 101 elf_machine_load_address (void) 102 102 { 103 103 Elf32_Addr addr, tmp; … … 118 118 return addr - 3; 119 119 } 120 120 121 static __ inline__void121 static __always_inline void 122 122 elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, 123 123 Elf32_Word relative_count) 124 124 { -
libc/sysdeps/linux/alpha/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/alpha/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/mathdef.h
old new 78 78 79 79 # endif /* GNUC before 3.4 */ 80 80 #endif /* COMPLEX_H */ 81 82 #if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 83 # define __NO_LONG_DOUBLE_MATH 1 84 #endif -
libc/sysdeps/linux/alpha/bits/wordsize.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/alpha/bits/wordsize.h uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/wordsize.h
old new 18 18 19 19 #define __WORDSIZE 64 20 20 21 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__&& !defined __LONG_DOUBLE_MATH_OPTIONAL21 #if !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL 22 22 23 23 /* Signal that we didn't used to have a `long double'. The changes all 24 24 the `long double' function variants to be redirects to the double 25 25 functions. */ 26 26 # define __LONG_DOUBLE_MATH_OPTIONAL 1 27 27 # ifndef __LONG_DOUBLE_128__ 28 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__28 # define __NO_LONG_DOUBLE_MATH 1 29 29 # endif 30 30 #endif -
libc/sysdeps/linux/arm/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/arm/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/arm/bits/mathdef.h
old new 34 34 # define FP_ILOGBNAN (2147483647) 35 35 36 36 #endif /* ISO C99 */ 37 38 #ifndef __NO_LONG_DOUBLE_MATH 39 /* Signal that we do not really have a `long double'. This disables the 40 declaration of all the `long double' function variants. */ 41 /* XXX The FPA does support this but the patterns in GCC are currently 42 turned off. */ 43 # define __NO_LONG_DOUBLE_MATH 1 44 #endif -
libc/sysdeps/linux/common/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/common/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/common/bits/mathdef.h
old new 35 35 # define FP_ILOGBNAN 2147483647 36 36 37 37 #endif /* ISO C99 */ 38 39 #ifndef __NO_LONG_DOUBLE_MATH 40 /* Signal that we do not really have a `long double'. The disables the 41 declaration of all the `long double' function variants. */ 42 # define __NO_LONG_DOUBLE_MATH 1 43 #endif -
libc/sysdeps/linux/i386/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/i386/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/i386/bits/mathdef.h
old new 44 44 # define FP_ILOGBNAN (-2147483647 - 1) 45 45 46 46 #endif /* ISO C99 */ 47 48 #if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 49 # define __NO_LONG_DOUBLE_MATH 1 50 #endif -
libc/sysdeps/linux/ia64/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/ia64/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/ia64/bits/mathdef.h
old new 35 35 # define FP_ILOGBNAN 2147483647 36 36 37 37 #endif /* ISO C99 */ 38 39 #if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 40 # define __NO_LONG_DOUBLE_MATH 1 41 #endif -
libc/sysdeps/linux/m68k/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/m68k/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/m68k/bits/mathdef.h
old new 36 36 # define FP_ILOGBNAN (2147483647) 37 37 38 38 #endif /* ISO C99 */ 39 40 #if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 41 # define __NO_LONG_DOUBLE_MATH 1 42 #endif -
libc/sysdeps/linux/mips/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/mips/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/mips/bits/mathdef.h
old new 39 39 40 40 #endif /* ISO C99 */ 41 41 42 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__&& _MIPS_SIM == _ABIO3242 #if ! defined __NO_LONG_DOUBLE_MATH && _MIPS_SIM == _ABIO32 43 43 /* Signal that we do not really have a `long double'. This disables the 44 44 declaration of all the `long double' function variants. */ 45 # error defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ and _MIPS_SIM == _ABIO32 45 # define __NO_LONG_DOUBLE_MATH 1 46 #elif !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 47 # define __NO_LONG_DOUBLE_MATH 1 46 48 #endif -
libc/sysdeps/linux/nios/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/nios/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/nios/bits/mathdef.h
old new 34 34 # define FP_ILOGBNAN (2147483647) 35 35 36 36 #endif /* ISO C99 */ 37 38 #ifndef __NO_LONG_DOUBLE_MATH 39 /* Signal that we do not really have a `long double'. This disables the 40 declaration of all the `long double' function variants. */ 41 /* XXX The FPA does support this but the patterns in GCC are currently 42 turned off. */ 43 # define __NO_LONG_DOUBLE_MATH 1 44 #endif -
libc/sysdeps/linux/nios2/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/nios2/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/nios2/bits/mathdef.h
old new 34 34 # define FP_ILOGBNAN (2147483647) 35 35 36 36 #endif /* ISO C99 */ 37 38 #ifndef __NO_LONG_DOUBLE_MATH 39 /* Signal that we do not really have a `long double'. This disables the 40 declaration of all the `long double' function variants. */ 41 /* XXX The FPA does support this but the patterns in GCC are currently 42 turned off. */ 43 # define __NO_LONG_DOUBLE_MATH 1 44 #endif -
libc/sysdeps/linux/powerpc/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/powerpc/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/mathdef.h
old new 65 65 66 66 #endif /* ISO C99 */ 67 67 68 #if def __UCLIBC_HAS_LONG_DOUBLE_MATH__68 #ifndef __NO_LONG_DOUBLE_MATH 69 69 #include <bits/wordsize.h> 70 70 /* Signal that we do not really have a `long double'. The disables the 71 71 declaration of all the `long double' function variants. */ 72 72 # if __WORDSIZE == 32 73 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__ 73 # define __NO_LONG_DOUBLE_MATH 1 74 # elif !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 75 # define __NO_LONG_DOUBLE_MATH 1 74 76 # endif /* __WORDSIZE == 32 */ 75 #endif /* __ UCLIBC_HAS_LONG_DOUBLE_MATH__*/77 #endif /* __NO_LONG_DOUBLE_MATH */ -
libc/sysdeps/linux/powerpc/bits/wordsize.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/powerpc/bits/wordsize.h uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/wordsize.h
old new 7 7 # define __WORDSIZE 32 8 8 #endif 9 9 10 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__&& !defined __LONG_DOUBLE_MATH_OPTIONAL10 #if !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL 11 11 12 12 /* Signal the glibc ABI didn't used to have a `long double'. 13 13 The changes all the `long double' function variants to be redirects 14 14 to the double functions. */ 15 15 # define __LONG_DOUBLE_MATH_OPTIONAL 1 16 16 # ifndef __LONG_DOUBLE_128__ 17 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__17 # define __NO_LONG_DOUBLE_MATH 1 18 18 # endif 19 19 #endif -
libc/sysdeps/linux/sh/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/sh/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/sh/bits/mathdef.h
old new 61 61 # define FP_ILOGBNAN 0x7fffffff 62 62 63 63 #endif /* ISO C99 */ 64 65 #ifndef __NO_LONG_DOUBLE_MATH 66 /* Signal that we do not really have a `long double'. The disables the 67 declaration of all the `long double' function variants. */ 68 # define __NO_LONG_DOUBLE_MATH 1 69 #endif -
libc/sysdeps/linux/sparc/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/sparc/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathdef.h
old new 57 57 58 58 #endif /* ISO C99 */ 59 59 60 #if def __UCLIBC_HAS_LONG_DOUBLE_MATH__60 #ifndef __NO_LONG_DOUBLE_MATH 61 61 62 62 # if __WORDSIZE == 32 63 63 /* Signal that in 32bit ABI we do not really have a `long double'. 64 64 The disables the declaration of all the `long double' function 65 65 variants. */ 66 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__ 66 # define __NO_LONG_DOUBLE_MATH 1 67 # elif !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 68 # define __NO_LONG_DOUBLE_MATH 1 67 69 # endif 68 70 69 71 #endif -
libc/sysdeps/linux/sparc/bits/mathinline.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/sparc/bits/mathinline.h uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathinline.h
old new 37 37 38 38 # if __WORDSIZE == 32 39 39 40 # if def __UCLIBC_HAS_LONG_DOUBLE_MATH__40 # ifndef __NO_LONG_DOUBLE_MATH 41 41 42 42 # define __unordered_cmp(x, y) \ 43 43 (__extension__ \ … … 157 157 return __u.__i[0] < 0; 158 158 } 159 159 160 # if def __UCLIBC_HAS_LONG_DOUBLE_MATH__160 # ifndef __NO_LONG_DOUBLE_MATH 161 161 __MATH_INLINE int 162 162 __NTH (__signbitl (long double __x)) 163 163 { … … 219 219 _Qp_sqrt (&__r, &__x); 220 220 return __r; 221 221 } 222 # elif defined __UCLIBC_HAS_LONG_DOUBLE_MATH__222 # elif !defined __NO_LONG_DOUBLE_MATH 223 223 __MATH_INLINE long double 224 224 sqrtl (long double __x) __THROW 225 225 { … … 257 257 _Qp_sqrt(&__r, &__x); 258 258 return __r; 259 259 } 260 # elif defined __UCLIBC_HAS_LONG_DOUBLE_MATH__260 # elif !defined __NO_LONG_DOUBLE_MATH 261 261 __MATH_INLINE long double 262 262 __ieee754_sqrtl (long double __x) 263 263 { -
libc/sysdeps/linux/sparc/bits/wordsize.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/sparc/bits/wordsize.h uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/wordsize.h
old new 6 6 # define __WORDSIZE 32 7 7 #endif 8 8 9 #if 0 /* uClibc: done in mathdefs.h: defined __UCLIBC_HAS_LONG_DOUBLE_MATH__&& !defined __LONG_DOUBLE_MATH_OPTIONAL*/9 #if 0 /* uClibc: done in mathdefs.h: !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL*/ 10 10 11 11 # if __WORDSIZE == 32 12 12 /* Signal that in 32bit ABI we didn't used to have a `long double'. … … 14 14 to the double functions. */ 15 15 # define __LONG_DOUBLE_MATH_OPTIONAL 1 16 16 # ifndef __LONG_DOUBLE_128__ 17 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__17 # define __NO_LONG_DOUBLE_MATH 1 18 18 # endif 19 19 # endif 20 20 #endif -
libc/sysdeps/linux/x86_64/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/x86_64/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/x86_64/bits/mathdef.h
old new 46 46 # define FP_ILOGBNAN (-2147483647 - 1) 47 47 48 48 #endif /* ISO C99 */ 49 50 #if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 51 # define __NO_LONG_DOUBLE_MATH 1 52 #endif -
libc/sysdeps/linux/xtensa/bits/mathdef.h
diff -Naur uClibc-0.9.30.1.orig/libc/sysdeps/linux/xtensa/bits/mathdef.h uClibc-0.9.30.1/libc/sysdeps/linux/xtensa/bits/mathdef.h
old new 36 36 37 37 #endif /* ISO C99 */ 38 38 39 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__39 #ifndef __NO_LONG_DOUBLE_MATH 40 40 /* Signal that we do not really have a `long double'. The disables the 41 41 declaration of all the `long double' function variants. */ 42 # undef __UCLIBC_HAS_LONG_DOUBLE_MATH__42 # define __NO_LONG_DOUBLE_MATH 1 43 43 #endif -
libm/ldouble_wrappers.c
diff -Naur uClibc-0.9.30.1.orig/libm/ldouble_wrappers.c uClibc-0.9.30.1/libm/ldouble_wrappers.c
old new 13 13 #include "math.h" 14 14 #include <complex.h> 15 15 16 #if defined __NO_LONG_DOUBLE_MATH 17 # define int_WRAPPER_C99(func) /* not needed */ 18 # else 19 # define int_WRAPPER_C99(func) \ 20 int func##l(long double x) \ 21 { \ 22 return func((double) x); \ 23 } \ 24 libm_hidden_def(func##l) 25 #endif 16 26 17 27 /* Implement the following, as defined by SuSv3 */ 18 28 #if 0 … … 543 553 #endif 544 554 545 555 546 #if def__DO_C99_MATH__556 #if defined __DO_C99_MATH__ 547 557 548 558 #ifdef L_fpclassifyl 549 int __fpclassifyl (long double x) 550 { 551 return __fpclassify ( (double) x ); 552 } 553 libm_hidden_def(__fpclassifyl) 559 int_WRAPPER_C99(__fpclassify) 554 560 #endif 555 561 556 562 #ifdef L_finitel 557 int __finitel (long double x) 558 { 559 return __finite ( (double)x ); 560 } 561 libm_hidden_def(__finitel) 563 int_WRAPPER_C99(__finite) 562 564 #endif 563 565 564 566 #ifdef L_signbitl 565 int __signbitl (long double x) 566 { 567 return __signbitl ( (double)x ); 568 } 569 libm_hidden_def(__signbitl) 567 int_WRAPPER_C99(__signbit) 570 568 #endif 571 569 572 570 #ifdef L_isnanl 573 int __isnanl (long double x) 574 { 575 return __isnan ( (double)x ); 576 } 577 libm_hidden_def(__isnanl) 571 int_WRAPPER_C99(__isnan) 578 572 #endif 579 573 580 574 #ifdef L_isinfl 581 int __isinfl (long double x) 582 { 583 return __isinf ( (double)x ); 584 } 585 libm_hidden_def(__isinfl) 575 int_WRAPPER_C99(__isinf) 586 576 #endif 587 577 588 #endif 578 #endif /* DO_C99_MATH */ 579 580 #undef int_WRAPPER_C99 -
uClibc-0.9.30.1
diff -Naur uClibc-0.9.30.1.orig/libm/nan.c uClibc-0.9.30.1/libm/nan.c
old new 45 45 } 46 46 libm_hidden_def(nanf) 47 47 48 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ 48 #if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && !defined __NO_LONG_DOUBLE_MATH 49 49 libm_hidden_proto(nanl) 50 50 long double nanl (const char *tagp) 51 51 { -
libpthread/linuxthreads/sysdeps/arm/sysdep-cancel.h
diff -Naur uClibc-0.9.30.1.orig/libpthread/linuxthreads/sysdeps/arm/sysdep-cancel.h uClibc-0.9.30.1/libpthread/linuxthreads/sysdeps/arm/sysdep-cancel.h
old new 1 #include <sysdep.h> 2 3 /* No multi-thread handling enabled. */ 4 #define SINGLE_THREAD_P (1) 5 #define RTLD_SINGLE_THREAD_P (1) 6 #define LIBC_CANCEL_ASYNC() 0 /* Just a dummy value. */ 7 #define LIBC_CANCEL_RESET(val) ((void)(val)) /* Nothing, but evaluate it. */ 8 #define LIBC_CANCEL_HANDLED() /* Nothing. */ 9 -
libpthread/linuxthreads/sysdeps/arm/sysdep.h
diff -Naur uClibc-0.9.30.1.orig/libpthread/linuxthreads/sysdeps/arm/sysdep.h uClibc-0.9.30.1/libpthread/linuxthreads/sysdeps/arm/sysdep.h
old new 1 /* Generic asm macros used on many machines. 2 Copyright (C) 1991,92,93,96,98,2002,2003 Free Software Foundation, Inc. 3 This file is part of the GNU C Library. 4 5 The GNU C Library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) any later version. 9 10 The GNU C Library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with the GNU C Library; if not, write to the Free 17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 18 02111-1307 USA. */ 19 20 #ifndef C_LABEL 21 22 /* Define a macro we can use to construct the asm name for a C symbol. */ 23 #ifdef NO_UNDERSCORES 24 #ifdef __STDC__ 25 #define C_LABEL(name) name##: 26 #else 27 #define C_LABEL(name) name/**/: 28 #endif 29 #else 30 #ifdef __STDC__ 31 #define C_LABEL(name) _##name##: 32 #else 33 #define C_LABEL(name) _/**/name/**/: 34 #endif 35 #endif 36 37 #endif 38 39 #ifdef __ASSEMBLER__ 40 /* Mark the end of function named SYM. This is used on some platforms 41 to generate correct debugging information. */ 42 #ifndef END 43 #define END(sym) 44 #endif 45 46 #ifndef JUMPTARGET 47 #define JUMPTARGET(sym) sym 48 #endif 49 50 /* Makros to generate eh_frame unwind information. */ 51 # ifdef HAVE_ASM_CFI_DIRECTIVES 52 # define cfi_startproc .cfi_startproc 53 # define cfi_endproc .cfi_endproc 54 # define cfi_def_cfa(reg, off) .cfi_def_cfa reg, off 55 # define cfi_def_cfa_register(reg) .cfi_def_cfa_register reg 56 # define cfi_def_cfa_offset(off) .cfi_def_cfa_offset off 57 # define cfi_adjust_cfa_offset(off) .cfi_adjust_cfa_offset off 58 # define cfi_offset(reg, off) .cfi_offset reg, off 59 # define cfi_rel_offset(reg, off) .cfi_rel_offset reg, off 60 # define cfi_register(r1, r2) .cfi_register r1, r2 61 # define cfi_return_column(reg) .cfi_return_column reg 62 # define cfi_restore(reg) .cfi_restore reg 63 # define cfi_same_value(reg) .cfi_same_value reg 64 # define cfi_undefined(reg) .cfi_undefined reg 65 # define cfi_remember_state .cfi_remember_state 66 # define cfi_restore_state .cfi_restore_state 67 # define cfi_window_save .cfi_window_save 68 # else 69 # define cfi_startproc 70 # define cfi_endproc 71 # define cfi_def_cfa(reg, off) 72 # define cfi_def_cfa_register(reg) 73 # define cfi_def_cfa_offset(off) 74 # define cfi_adjust_cfa_offset(off) 75 # define cfi_offset(reg, off) 76 # define cfi_rel_offset(reg, off) 77 # define cfi_register(r1, r2) 78 # define cfi_return_column(reg) 79 # define cfi_restore(reg) 80 # define cfi_same_value(reg) 81 # define cfi_undefined(reg) 82 # define cfi_remember_state 83 # define cfi_restore_state 84 # define cfi_window_save 85 # endif 86 87 #else /* ! ASSEMBLER */ 88 # ifdef HAVE_ASM_CFI_DIRECTIVES 89 # define CFI_STRINGIFY(Name) CFI_STRINGIFY2 (Name) 90 # define CFI_STRINGIFY2(Name) #Name 91 # define CFI_STARTPROC ".cfi_startproc" 92 # define CFI_ENDPROC ".cfi_endproc" 93 # define CFI_DEF_CFA(reg, off) \ 94 ".cfi_def_cfa " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off) 95 # define CFI_DEF_CFA_REGISTER(reg) \ 96 ".cfi_def_cfa_register " CFI_STRINGIFY(reg) 97 # define CFI_DEF_CFA_OFFSET(off) \ 98 ".cfi_def_cfa_offset " CFI_STRINGIFY(off) 99 # define CFI_ADJUST_CFA_OFFSET(off) \ 100 ".cfi_adjust_cfa_offset " CFI_STRINGIFY(off) 101 # define CFI_OFFSET(reg, off) \ 102 ".cfi_offset " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off) 103 # define CFI_REL_OFFSET(reg, off) \ 104 ".cfi_rel_offset " CFI_STRINGIFY(reg) "," CFI_STRINGIFY(off) 105 # define CFI_REGISTER(r1, r2) \ 106 ".cfi_register " CFI_STRINGIFY(r1) "," CFI_STRINGIFY(r2) 107 # define CFI_RETURN_COLUMN(reg) \ 108 ".cfi_return_column " CFI_STRINGIFY(reg) 109 # define CFI_RESTORE(reg) \ 110 ".cfi_restore " CFI_STRINGIFY(reg) 111 # define CFI_UNDEFINED(reg) \ 112 ".cfi_undefined " CFI_STRINGIFY(reg) 113 # define CFI_REMEMBER_STATE \ 114 ".cfi_remember_state" 115 # define CFI_RESTORE_STATE \ 116 ".cfi_restore_state" 117 # define CFI_WINDOW_SAVE \ 118 ".cfi_window_save" 119 # else 120 # define CFI_STARTPROC 121 # define CFI_ENDPROC 122 # define CFI_DEF_CFA(reg, off) 123 # define CFI_DEF_CFA_REGISTER(reg) 124 # define CFI_DEF_CFA_OFFSET(off) 125 # define CFI_ADJUST_CFA_OFFSET(off) 126 # define CFI_OFFSET(reg, off) 127 # define CFI_REL_OFFSET(reg, off) 128 # define CFI_REGISTER(r1, r2) 129 # define CFI_RETURN_COLUMN(reg) 130 # define CFI_RESTORE(reg) 131 # define CFI_UNDEFINED(reg) 132 # define CFI_REMEMBER_STATE 133 # define CFI_RESTORE_STATE 134 # define CFI_WINDOW_SAVE 135 # endif 136 137 #endif /* __ASSEMBLER__ */ 138 -
uClibc-0.9.30.1
diff -Naur uClibc-0.9.30.1.orig/Rules.mak uClibc-0.9.30.1/Rules.mak
old new 85 85 MAJOR_VERSION := 0 86 86 MINOR_VERSION := 9 87 87 SUBLEVEL := 30 88 EXTRAVERSION :=. 188 EXTRAVERSION :=.2-svn 89 89 VERSION := $(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL) 90 90 ifneq ($(EXTRAVERSION),) 91 91 VERSION := $(VERSION)$(EXTRAVERSION) … … 393 393 # -shared by itself would get us global function descriptors 394 394 # and calls through PLTs, dynamic resolution of symbols, etc, 395 395 # which would break as well, but -Bsymbolic comes to the rescue. 396 export LDPIEFLAG:=- Wl,-shared -Wl,-Bsymbolic396 export LDPIEFLAG:=-shared -Wl,-Bsymbolic 397 397 UCLIBC_LDSO=ld.so.1 398 398 endif 399 399 … … 520 520 521 521 CFLAGS += $(call check_gcc,-std=gnu99,) 522 522 523 LDFLAGS_NOSTRIP:=$(CPU_LDFLAGS-y) - Wl,-shared \523 LDFLAGS_NOSTRIP:=$(CPU_LDFLAGS-y) -shared \ 524 524 -Wl,--warn-common -Wl,--warn-once -Wl,-z,combreloc 525 525 # binutils-2.16.1 warns about ignored sections, 2.16.91.0.3 and newer are ok 526 526 #LDFLAGS_NOSTRIP+=$(call check_ld,--gc-sections)
Note:
See TracBrowser
for help on using the repository browser.