]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
[ bfd/ChangeLog ]
authorThiemo Seufer <ths@networkno.de>
Mon, 12 Jun 2006 11:35:45 +0000 (11:35 +0000)
committerThiemo Seufer <ths@networkno.de>
Mon, 12 Jun 2006 11:35:45 +0000 (11:35 +0000)
* elf32-mips.c: Expand comment about ABI-mandated pagesize values.
(ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): define in a more obvious way.
* elf64-mips.c, elfn32-mips.c (ELF_MAXPAGESIZE): Fix value for IRIX6.
Delete old comments.
(ELF_COMMONPAGESIZE): Define in a more obvious way.

[ ld/ChangeLog ]
* emulparams/elf64bmip.sh, emulparams/elf64btsmip.sh (COMMONPAGESIZE):
Define.

[ ld/testsuite/ChangeLog ]
* ld-mips-elf/multi-got-no-shared.d: Adjust for recent change of
ELF_MAXPAGESIZE.

bfd/ChangeLog
bfd/elf32-mips.c
bfd/elf64-mips.c
bfd/elfn32-mips.c
ld/ChangeLog
ld/emulparams/elf64bmip.sh
ld/emulparams/elf64btsmip.sh
ld/testsuite/ChangeLog
ld/testsuite/ld-mips-elf/multi-got-no-shared.d

index a1b2a3f7b2295116c50b7532f3a2b2c8b37964b8..8a369c8b38f6a5dd785509b7bd977c20a00a89ee 100644 (file)
@@ -1,3 +1,11 @@
+2006-06-12  Thiemo Seufer  <ths@mips.com>
+
+       * elf32-mips.c: Expand comment about ABI-mandated pagesize values.
+       (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): define in a more obvious way.
+       * elf64-mips.c, elfn32-mips.c (ELF_MAXPAGESIZE): Fix value for IRIX6.
+       Delete old comments.
+       (ELF_COMMONPAGESIZE): Define in a more obvious way.
+
 2006-06-12  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/2735
index fd8a4277123bf9e10a671de2b24f65c88152fe20..5745df5b94cf1fb5d0dd059744cef8f82d3764e4 100644 (file)
@@ -1610,15 +1610,20 @@ static const struct ecoff_debug_swap mips_elf32_ecoff_debug_swap = {
 #undef TARGET_BIG_NAME
 
 #undef ELF_MAXPAGESIZE
+#undef ELF_COMMONPAGESIZE
 
 #define TARGET_LITTLE_SYM               bfd_elf32_tradlittlemips_vec
 #define TARGET_LITTLE_NAME              "elf32-tradlittlemips"
 #define TARGET_BIG_SYM                  bfd_elf32_tradbigmips_vec
 #define TARGET_BIG_NAME                 "elf32-tradbigmips"
 
-/* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
-   page sizes of up to that limit, so we need to respect it.  */
+/* The MIPS ABI says at Page 5-1:
+   Virtual addresses and file offsets for MIPS segments are congruent
+   modulo 64 KByte (0x10000) or larger powers of 2.  Because 64 KBytes
+   is the maximum page size, the files are suitable for paging
+   regardless of physical page size.  */
 #define ELF_MAXPAGESIZE                        0x10000
+#define ELF_COMMONPAGESIZE             0x1000
 #define elf32_bed                      elf32_tradbed
 
 /* Include the target file again for this target.  */
@@ -1703,6 +1708,9 @@ mips_vxworks_final_write_processing (bfd *abfd, bfd_boolean linker)
 #undef TARGET_BIG_SYM
 #undef TARGET_BIG_NAME
 
+#undef ELF_MAXPAGESIZE
+#undef ELF_COMMONPAGESIZE
+
 #define TARGET_LITTLE_SYM               bfd_elf32_littlemips_vxworks_vec
 #define TARGET_LITTLE_NAME              "elf32-littlemips-vxworks"
 #define TARGET_BIG_SYM                  bfd_elf32_bigmips_vxworks_vec
@@ -1711,8 +1719,8 @@ mips_vxworks_final_write_processing (bfd *abfd, bfd_boolean linker)
 #undef elf32_bed
 #define elf32_bed                      elf32_mips_vxworks_bed
 
-#undef ELF_MAXPAGESIZE
 #define ELF_MAXPAGESIZE                        0x1000
+#define ELF_COMMONPAGESIZE             0x1000
 
 #undef elf_backend_want_got_plt
 #define elf_backend_want_got_plt               1
index c8f3127e3c9e660b3748d97106fac32fc01123d6..ee5bce6619c698e28114f93ff9c1e84da29cfb72 100644 (file)
@@ -3152,10 +3152,8 @@ extern bfd_boolean bfd_elf64_archive_write_armap
 #define TARGET_BIG_SYM                 bfd_elf64_bigmips_vec
 #define TARGET_BIG_NAME                        "elf64-bigmips"
 
-/* The SVR4 MIPS ABI says that this should be 0x10000, but Irix 5 uses
-   a value of 0x1000, and we are compatible.
-   FIXME: How does this affect NewABI?  */
-#define ELF_MAXPAGESIZE                        0x1000
+#define ELF_MAXPAGESIZE                        0x10000
+#define ELF_COMMONPAGESIZE             0x1000
 
 #include "elf64-target.h"
 
@@ -3166,15 +3164,15 @@ extern bfd_boolean bfd_elf64_archive_write_armap
 #undef TARGET_BIG_NAME
 
 #undef ELF_MAXPAGESIZE
+#undef ELF_COMMONPAGESIZE
 
 #define TARGET_LITTLE_SYM              bfd_elf64_tradlittlemips_vec
 #define TARGET_LITTLE_NAME             "elf64-tradlittlemips"
 #define TARGET_BIG_SYM                 bfd_elf64_tradbigmips_vec
 #define TARGET_BIG_NAME                        "elf64-tradbigmips"
 
-/* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
-   page sizes of up to that limit, so we need to respect it.  */
 #define ELF_MAXPAGESIZE                        0x10000
+#define ELF_COMMONPAGESIZE             0x1000
 #define elf64_bed                      elf64_tradbed
 
 /* Include the target file again for this target.  */
index 8e7eb53c319710909c6730c3878b36acc2759a17..367bcf33fffca00d483a95797cc4152754ef627a 100644 (file)
@@ -2380,10 +2380,7 @@ static const struct ecoff_debug_swap mips_elf32_ecoff_debug_swap = {
 #define TARGET_BIG_SYM                  bfd_elf32_nbigmips_vec
 #define TARGET_BIG_NAME                 "elf32-nbigmips"
 
-/* The SVR4 MIPS ABI says that this should be 0x10000, but Irix 5 uses
-   a value of 0x1000, and we are compatible.
-   FIXME: How does this affect NewABI?  */
-#define ELF_MAXPAGESIZE                        0x1000
+#define ELF_MAXPAGESIZE                        0x10000
 #define ELF_COMMONPAGESIZE             0x1000
 
 #include "elf32-target.h"
@@ -2395,15 +2392,15 @@ static const struct ecoff_debug_swap mips_elf32_ecoff_debug_swap = {
 #undef TARGET_BIG_NAME
 
 #undef ELF_MAXPAGESIZE
+#undef ELF_COMMONPAGESIZE
 
 #define TARGET_LITTLE_SYM               bfd_elf32_ntradlittlemips_vec
 #define TARGET_LITTLE_NAME              "elf32-ntradlittlemips"
 #define TARGET_BIG_SYM                  bfd_elf32_ntradbigmips_vec
 #define TARGET_BIG_NAME                 "elf32-ntradbigmips"
 
-/* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
-   page sizes of up to that limit, so we need to respect it.  */
 #define ELF_MAXPAGESIZE                        0x10000
+#define ELF_COMMONPAGESIZE             0x1000
 #define elf32_bed                      elf32_tradbed
 
 /* Include the target file again for this target.  */
index 69d3db653db295ac6d37d1784a9a4263cd62b932..a288ca90b97025c0614a59d681ec488dcf395a42 100644 (file)
@@ -1,3 +1,8 @@
+2006-06-12  Thiemo Seufer  <ths@mips.com>
+
+       * emulparams/elf64bmip.sh, emulparams/elf64btsmip.sh (COMMONPAGESIZE):
+       Define.
+
 2006-06-09  Alan Modra  <amodra@bigpond.net.au>
 
        * ldlang.h (lang_input_statement_type): Use bitfields for booleans.
index a4ce6d49519e6410e63f106c58b85071d569f50f..3910beadc911318b00502fa08c2aa7355e9422a2 100755 (executable)
@@ -3,6 +3,7 @@ OUTPUT_FORMAT="elf64-bigmips"
 BIG_OUTPUT_FORMAT="elf64-bigmips"
 LITTLE_OUTPUT_FORMAT="elf64-littlemips"
 SHLIB_TEXT_START_ADDR=0x3ffffe0000
+COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
 
 # IRIX6 defines these symbols.  0x40 is the size of the ELF header.
 EXECUTABLE_SYMBOLS="
index 23a20c7b8b0204bbda2532dedb688e6643c7c953..f6e8dcf160919409553c7e0d2482e2bf92d6f814 100644 (file)
@@ -5,6 +5,7 @@
 OUTPUT_FORMAT="elf64-tradbigmips"
 BIG_OUTPUT_FORMAT="elf64-tradbigmips"
 LITTLE_OUTPUT_FORMAT="elf64-tradlittlemips"
+COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
 
 # Magic sections.
 OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
index 5995a3559f7df12966f7dd7f034e7b10c7febddd..66a5dac2c52ad2bafa156abe801c7e2209543453 100644 (file)
@@ -1,3 +1,8 @@
+2006-06-12  Thiemo Seufer  <ths@mips.com>
+
+       * ld-mips-elf/multi-got-no-shared.d: Adjust for recent change of
+       ELF_MAXPAGESIZE.
+
 2006-06-11  Richard Sandiford  <richard@codesourcery.com>
 
        * ld-mips-elf/stub-dynsym-1.s,
index 927b3040be9139cbfa45ae70f2f1ed27328c8e78..bffc48539fd5280ab105be70fd873122ad326f9e 100644 (file)
@@ -8,11 +8,11 @@
 .*: +file format.*
 
 Disassembly of section \.text:
-004000b0 <[^>]*> 3c1c0046      lui     gp,0x46
+004000b0 <[^>]*> 3c1c0043      lui     gp,0x43
 004000b4 <[^>]*> 279c9ff0      addiu   gp,gp,-24592
 004000b8 <[^>]*> afbc0008      sw      gp,8\(sp\)
 #...
-00408d60 <[^>]*> 3c1c0047      lui     gp,0x47
+00408d60 <[^>]*> 3c1c0044      lui     gp,0x44
 00408d64 <[^>]*> 279cb960      addiu   gp,gp,-18080
 00408d68 <[^>]*> afbc0008      sw      gp,8\(sp\)
 #pass