summaryrefslogtreecommitdiff
path: root/toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch b/toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch
new file mode 100644
index 0000000..e2efa23
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.33.2/613-mips64_more_relocation_fixes.patch
@@ -0,0 +1,20 @@
+--- a/ldso/ldso/mips/elfinterp.c
++++ b/ldso/ldso/mips/elfinterp.c
+@@ -239,7 +239,7 @@ int _dl_parse_relocation_information(str
+ case R_MIPS_TLS_DTPMOD64:
+ case R_MIPS_TLS_DTPMOD32:
+ if (tls_tpnt)
+- *(ElfW(Word) *)reloc_addr = tls_tpnt->l_tls_modid;
++ *(ElfW(Addr) *)reloc_addr = tls_tpnt->l_tls_modid;
+ #ifdef __SUPPORT_LD_DEBUG__
+ _dl_dprintf(2, "TLS_DTPMOD : %s, %d, %d\n",
+ symname, old_val, *((unsigned int *)reloc_addr));
+@@ -248,7 +248,7 @@ int _dl_parse_relocation_information(str
+
+ case R_MIPS_TLS_DTPREL64:
+ case R_MIPS_TLS_DTPREL32:
+- *(ElfW(Word) *)reloc_addr +=
++ *(ElfW(Addr) *)reloc_addr +=
+ TLS_DTPREL_VALUE (symbol_addr);
+ #ifdef __SUPPORT_LD_DEBUG__
+ _dl_dprintf(2, "TLS_DTPREL : %s, %x, %x\n",