summaryrefslogtreecommitdiffstats
path: root/toolchain/musl/patches/800-mips_pie_debug.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/musl/patches/800-mips_pie_debug.patch')
-rw-r--r--toolchain/musl/patches/800-mips_pie_debug.patch61
1 files changed, 0 insertions, 61 deletions
diff --git a/toolchain/musl/patches/800-mips_pie_debug.patch b/toolchain/musl/patches/800-mips_pie_debug.patch
deleted file mode 100644
index 80fe15e841..0000000000
--- a/toolchain/musl/patches/800-mips_pie_debug.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Fix DT_DEBUG handling on MIPS in musl libc.
-With this change gdb will load the symbol files for shared libraries on MIPS too.
-
-This patch was taken from this thread: https://www.openwall.com/lists/musl/2022/01/09/4
-
---- a/arch/mips/reloc.h
-+++ b/arch/mips/reloc.h
-@@ -29,6 +29,7 @@
-
- #define NEED_MIPS_GOT_RELOCS 1
- #define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
-+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
- #define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
-
- #define CRTJMP(pc,sp) __asm__ __volatile__( \
---- a/arch/mips64/reloc.h
-+++ b/arch/mips64/reloc.h
-@@ -38,6 +38,7 @@
-
- #define NEED_MIPS_GOT_RELOCS 1
- #define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
-+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
- #define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
-
- #define CRTJMP(pc,sp) __asm__ __volatile__( \
---- a/arch/mipsn32/reloc.h
-+++ b/arch/mipsn32/reloc.h
-@@ -29,6 +29,7 @@
-
- #define NEED_MIPS_GOT_RELOCS 1
- #define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
-+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
- #define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
-
- #define CRTJMP(pc,sp) __asm__ __volatile__( \
---- a/ldso/dynlink.c
-+++ b/ldso/dynlink.c
-@@ -1923,6 +1923,10 @@ void __dls3(size_t *sp, size_t *auxv)
- size_t *ptr = (size_t *) app.dynv[i+1];
- *ptr = (size_t)&debug;
- }
-+ if (app.dynv[i]==DT_DEBUG_INDIRECT_REL) {
-+ size_t *ptr = (size_t *)((size_t)&app.dynv[i] + app.dynv[i+1]);
-+ *ptr = (size_t)&debug;
-+ }
- }
-
- /* This must be done before final relocations, since it calls
---- a/src/internal/dynlink.h
-+++ b/src/internal/dynlink.h
-@@ -92,6 +92,10 @@ struct fdpic_dummy_loadmap {
- #define DT_DEBUG_INDIRECT 0
- #endif
-
-+#ifndef DT_DEBUG_INDIRECT_REL
-+#define DT_DEBUG_INDIRECT_REL 0
-+#endif
-+
- #define AUX_CNT 32
- #define DYN_CNT 32
-