mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-23 23:16:16 +02:00
add missing patch from the uclibc buildroot
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16541 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
dccbe704f2
commit
9359756561
371
toolchain/uClibc/patches-0.9.30.1/180-dl_sysdep_inline.patch
Normal file
371
toolchain/uClibc/patches-0.9.30.1/180-dl_sysdep_inline.patch
Normal file
@ -0,0 +1,371 @@
|
|||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/arm/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/arm/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/arm/dl-sysdep.h (working copy)
|
||||||
|
@@ -15,7 +15,7 @@
|
||||||
|
GOT_BASE[1] = (unsigned long) MODULE; \
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ unsigned long arm_modulus(unsigned long m, unsigned long p)
|
||||||
|
+static __always_inline unsigned long arm_modulus(unsigned long m, unsigned long p)
|
||||||
|
{
|
||||||
|
unsigned long i,t,inc;
|
||||||
|
i=p; t=0;
|
||||||
|
@@ -72,7 +72,7 @@ unsigned long _dl_linux_resolver(struct
|
||||||
|
first element of the GOT. We used to use the PIC register to do this
|
||||||
|
without a constant pool reference, but GCC 4.2 will use a pseudo-register
|
||||||
|
for the PIC base, so it may not be in r10. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((unused))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((unused))
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr dynamic;
|
||||||
|
@@ -104,7 +104,7 @@ elf_machine_dynamic (void)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((unused))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((unused))
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
extern void __dl_start __asm__ ("_dl_start");
|
||||||
|
@@ -128,7 +128,7 @@ elf_machine_load_address (void)
|
||||||
|
return pcrel_addr - got_addr;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/powerpc/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/powerpc/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/powerpc/dl-sysdep.h (working copy)
|
||||||
|
@@ -90,7 +90,7 @@ void _dl_init_got(unsigned long *lpnt,st
|
||||||
|
#define ELF_MACHINE_PLTREL_OVERLAP 1
|
||||||
|
|
||||||
|
/* Return the value of the GOT pointer. */
|
||||||
|
-static __inline__ Elf32_Addr * __attribute__ ((const))
|
||||||
|
+static __always_inline Elf32_Addr * __attribute__ ((const))
|
||||||
|
ppc_got (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr *got;
|
||||||
|
@@ -109,14 +109,14 @@ ppc_got (void)
|
||||||
|
|
||||||
|
/* Return the link-time address of _DYNAMIC, stored as
|
||||||
|
the first value in the GOT. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((const))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((const))
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
return *ppc_got();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((const))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((const))
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr *branchaddr;
|
||||||
|
@@ -164,7 +164,7 @@ elf_machine_load_address (void)
|
||||||
|
return runtime_dynamic - elf_machine_dynamic ();
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/sh64/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/sh64/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/sh64/dl-sysdep.h (working copy)
|
||||||
|
@@ -42,7 +42,7 @@ extern unsigned long _dl_linux_resolver(
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. */
|
||||||
|
-static __inline__ Elf32_Addr elf_machine_dynamic(void)
|
||||||
|
+static __always_inline Elf32_Addr elf_machine_dynamic(void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *got;
|
||||||
|
|
||||||
|
@@ -70,7 +70,7 @@ static __inline__ Elf32_Addr elf_machine
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr elf_machine_load_address(void)
|
||||||
|
+static __always_inline Elf32_Addr elf_machine_load_address(void)
|
||||||
|
{
|
||||||
|
Elf32_Addr addr;
|
||||||
|
|
||||||
|
@@ -123,7 +123,7 @@ static __inline__ Elf32_Addr elf_machine
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative(Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/m68k/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/m68k/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/m68k/dl-sysdep.h (working copy)
|
||||||
|
@@ -41,7 +41,7 @@ extern unsigned long _dl_linux_resolver
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *got __asm__ ("%a5");
|
||||||
|
@@ -50,7 +50,7 @@ elf_machine_dynamic (void)
|
||||||
|
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr addr;
|
||||||
|
@@ -60,7 +60,7 @@ elf_machine_load_address (void)
|
||||||
|
return addr;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/i386/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/i386/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/i386/dl-sysdep.h (working copy)
|
||||||
|
@@ -42,8 +42,8 @@ extern unsigned long _dl_linux_resolver(
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. */
|
||||||
|
-static __inline__ Elf32_Addr elf_machine_dynamic (void) attribute_unused;
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr elf_machine_dynamic (void) attribute_unused;
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *got __asm__ ("%ebx");
|
||||||
|
@@ -52,8 +52,8 @@ elf_machine_dynamic (void)
|
||||||
|
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr elf_machine_load_address (void) attribute_unused;
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr elf_machine_load_address (void) attribute_unused;
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
/* It doesn't matter what variable this is, the reference never makes
|
||||||
|
@@ -66,7 +66,7 @@ elf_machine_load_address (void)
|
||||||
|
return addr;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/cris/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/cris/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/cris/dl-sysdep.h (working copy)
|
||||||
|
@@ -39,7 +39,7 @@ extern unsigned long _dl_linux_resolver(
|
||||||
|
|| ((type) == R_CRIS_GLOB_DAT)) * ELF_RTYPE_CLASS_PLT) \
|
||||||
|
| (((type) == R_CRIS_COPY) * ELF_RTYPE_CLASS_COPY))
|
||||||
|
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_dynamic(void)
|
||||||
|
{
|
||||||
|
/* Don't just set this to an asm variable "r0" since that's not logical
|
||||||
|
@@ -61,7 +61,7 @@ elf_machine_dynamic(void)
|
||||||
|
there's some other symbol we could use, that we don't *have* to force a
|
||||||
|
GOT entry for. */
|
||||||
|
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_load_address(void)
|
||||||
|
{
|
||||||
|
Elf32_Addr gotaddr_diff;
|
||||||
|
@@ -95,7 +95,7 @@ elf_machine_load_address(void)
|
||||||
|
return gotaddr_diff;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative(Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/xtensa/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/xtensa/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/xtensa/dl-sysdep.h (working copy)
|
||||||
|
@@ -87,7 +87,7 @@ extern unsigned long _dl_linux_resolver
|
||||||
|
(((type) == R_XTENSA_JMP_SLOT) * ELF_RTYPE_CLASS_PLT)
|
||||||
|
|
||||||
|
/* Return the link-time address of _DYNAMIC. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
/* This function is only used while bootstrapping the runtime linker.
|
||||||
|
@@ -97,7 +97,7 @@ elf_machine_dynamic (void)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr addr, tmp;
|
||||||
|
@@ -118,7 +118,7 @@ elf_machine_load_address (void)
|
||||||
|
return addr - 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/sparc/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/sparc/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/sparc/dl-sysdep.h (working copy)
|
||||||
|
@@ -49,7 +49,7 @@ unsigned long _dl_linux_resolver(struct
|
||||||
|
|
||||||
|
#ifndef COMPILE_ASM
|
||||||
|
/* Cheap modulo implementation, taken from arm/ld_sysdep.h. */
|
||||||
|
-static __inline__ unsigned long
|
||||||
|
+static __always_inline unsigned long
|
||||||
|
sparc_mod(unsigned long m, unsigned long p)
|
||||||
|
{
|
||||||
|
unsigned long i, t, inc;
|
||||||
|
@@ -127,7 +127,7 @@ do { register Elf32_Addr pc __asm__("
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *got __asm__ ("%l7");
|
||||||
|
@@ -138,7 +138,7 @@ elf_machine_dynamic (void)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr
|
||||||
|
+static __always_inline Elf32_Addr
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *pc __asm__ ("%o7"), *got __asm__ ("%l7");
|
||||||
|
@@ -157,7 +157,7 @@ elf_machine_load_address (void)
|
||||||
|
return (Elf32_Addr) got - *got + (pc[2] - pc[3]) * 4 - 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/mips/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/mips/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/mips/dl-sysdep.h (working copy)
|
||||||
|
@@ -163,7 +163,7 @@ void _dl_perform_mips_global_got_relocat
|
||||||
|
|
||||||
|
#define OFFSET_GP_GOT 0x7ff0
|
||||||
|
|
||||||
|
-static __inline__ ElfW(Addr) *
|
||||||
|
+static __always_inline ElfW(Addr) *
|
||||||
|
elf_mips_got_from_gpreg (ElfW(Addr) gpreg)
|
||||||
|
{
|
||||||
|
/* FIXME: the offset of gp from GOT may be system-dependent. */
|
||||||
|
@@ -173,7 +173,7 @@ elf_mips_got_from_gpreg (ElfW(Addr) gpre
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. We assume its $gp points to the primary GOT. */
|
||||||
|
-static __inline__ ElfW(Addr)
|
||||||
|
+static __always_inline ElfW(Addr)
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
register ElfW(Addr) gp __asm__ ("$28");
|
||||||
|
@@ -192,7 +192,7 @@ elf_machine_dynamic (void)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ ElfW(Addr)
|
||||||
|
+static __always_inline ElfW(Addr)
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
ElfW(Addr) addr;
|
||||||
|
@@ -208,7 +208,7 @@ elf_machine_load_address (void)
|
||||||
|
return addr;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (ElfW(Addr) load_off, const ElfW(Addr) rel_addr,
|
||||||
|
ElfW(Word) relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/sh/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/sh/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/sh/dl-sysdep.h (working copy)
|
||||||
|
@@ -25,7 +25,7 @@
|
||||||
|
struct elf_resolve;
|
||||||
|
extern unsigned long _dl_linux_resolver(struct elf_resolve * tpnt, int reloc_entry);
|
||||||
|
|
||||||
|
-static __inline__ unsigned int
|
||||||
|
+static __always_inline unsigned int
|
||||||
|
_dl_urem(unsigned int n, unsigned int base)
|
||||||
|
{
|
||||||
|
int res;
|
||||||
|
@@ -100,7 +100,7 @@ _dl_urem(unsigned int n, unsigned int ba
|
||||||
|
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
|
||||||
|
first element of the GOT. This must be inlined in a function which
|
||||||
|
uses global data. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((unused))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((unused))
|
||||||
|
elf_machine_dynamic (void)
|
||||||
|
{
|
||||||
|
register Elf32_Addr *got;
|
||||||
|
@@ -109,7 +109,7 @@ elf_machine_dynamic (void)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the run-time load address of the shared object. */
|
||||||
|
-static __inline__ Elf32_Addr __attribute__ ((unused))
|
||||||
|
+static __always_inline Elf32_Addr __attribute__ ((unused))
|
||||||
|
elf_machine_load_address (void)
|
||||||
|
{
|
||||||
|
Elf32_Addr addr;
|
||||||
|
@@ -151,7 +151,7 @@ elf_machine_load_address (void)
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
||||||
|
Index: uClibc-0.9.30.1/ldso/ldso/bfin/dl-sysdep.h
|
||||||
|
===================================================================
|
||||||
|
--- uClibc-0.9.30.1/ldso/ldso/bfin/dl-sysdep.h (revision 25503)
|
||||||
|
+++ uClibc-0.9.30.1/ldso/ldso/bfin/dl-sysdep.h (working copy)
|
||||||
|
@@ -213,7 +213,7 @@ while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <elf.h>
|
||||||
|
-static __inline__ void
|
||||||
|
+static __always_inline void
|
||||||
|
elf_machine_relative (DL_LOADADDR_TYPE load_off, const Elf32_Addr rel_addr,
|
||||||
|
Elf32_Word relative_count)
|
||||||
|
{
|
Loading…
Reference in New Issue
Block a user