diff options
Diffstat (limited to 'arch/mips')
-rw-r--r-- | arch/mips/bits/limits.h | 1 | ||||
-rw-r--r-- | arch/mips/reloc.h | 2 |
2 files changed, 1 insertions, 2 deletions
diff --git a/arch/mips/bits/limits.h b/arch/mips/bits/limits.h index 65a3dd64..fbc6d238 100644 --- a/arch/mips/bits/limits.h +++ b/arch/mips/bits/limits.h @@ -1,6 +1,5 @@ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -#define PAGE_SIZE 4096 #define LONG_BIT 32 #endif diff --git a/arch/mips/reloc.h b/arch/mips/reloc.h index 4c035f32..07fa10a7 100644 --- a/arch/mips/reloc.h +++ b/arch/mips/reloc.h @@ -51,7 +51,7 @@ void __reloc_self(int c, size_t *a, size_t *dynv, size_t *got) for (a+=c+1; *a; a++); for (a++; *a; a+=2) if (*a<20) t[*a] = a[1]; base = (char *)t[AT_BASE]; - if (!base) base = (char *)(t[AT_PHDR] & -4096); + if (!base) base = (char *)(t[AT_PHDR] & -t[AT_PAGESZ]); for (a=dynv; *a; a+=2) if (*a-0x70000000UL<20) t[*a&31] = a[1]; n = t[DT_MIPS_LOCAL_GOTNO - 0x70000000]; for (a=got; n; a++, n--) *a += (size_t)base; |