diff options
Diffstat (limited to 'toolchain/uClibc/patches-0.9.28/409-ldso-avr32-startup-hack.patch')
-rw-r--r-- | toolchain/uClibc/patches-0.9.28/409-ldso-avr32-startup-hack.patch | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/toolchain/uClibc/patches-0.9.28/409-ldso-avr32-startup-hack.patch b/toolchain/uClibc/patches-0.9.28/409-ldso-avr32-startup-hack.patch deleted file mode 100644 index 0cdc2ccb3..000000000 --- a/toolchain/uClibc/patches-0.9.28/409-ldso-avr32-startup-hack.patch +++ /dev/null @@ -1,40 +0,0 @@ -Subject: [PATCH] ldso: AVR32 startup hack - -AVR32 needs to do both PERFORM_BOOTSTRAP_GOT and a full relocation of -the GOT. I don't quite remember why, but I think it's because some GOT -entries just need the load address added to them, while the rest need -the full relocation code. - -This patch should be revisited to figure out whether we're processing -relocations against undefined symbols and whether that's something we -should be doing... - ---- - - ldso/ldso/dl-startup.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -Index: uClibc-0.9.28/ldso/ldso/dl-startup.c -=================================================================== ---- uClibc-0.9.28.orig/ldso/ldso/dl-startup.c 2006-02-07 16:49:27.000000000 +0100 -+++ uClibc-0.9.28/ldso/ldso/dl-startup.c 2006-02-07 17:12:09.000000000 +0100 -@@ -217,7 +217,9 @@ static void * __attribute_used__ _dl_sta - /* some arches (like MIPS) we have to tweak the GOT before relocations */ - PERFORM_BOOTSTRAP_GOT(tpnt); - --#else -+#endif -+ -+#if !defined(PERFORM_BOOTSTRAP_GOT) || defined(__avr32__) - - /* OK, now do the relocations. We do not do a lazy binding here, so - that once we are done, we have considerably more flexibility. */ -@@ -259,7 +261,7 @@ static void * __attribute_used__ _dl_sta - rel_addr += relative_count * sizeof(ELF_RELOC);; - } - -- rpnt = (ELF_RELOC *) (rel_addr + load_addr); -+ rpnt = (ELF_RELOC *) (rel_addr /* + load_addr */); - for (i = 0; i < rel_size; i += sizeof(ELF_RELOC), rpnt++) { - reloc_addr = (unsigned long *) (load_addr + (unsigned long) rpnt->r_offset); - symtab_index = ELF_R_SYM(rpnt->r_info); |