* emulparams/elf32bmip.sh (OTHER_GOT_SECTIONS): Add ". = .;".
authorRichard Sandiford <rdsandiford@googlemail.com>
Sat, 22 Jan 2005 18:13:16 +0000 (18:13 +0000)
committerRichard Sandiford <rdsandiford@googlemail.com>
Sat, 22 Jan 2005 18:13:16 +0000 (18:13 +0000)
* emulparams/elf32bmipn32-defs.sh (OTHER_GOT_SECTIONS): Likewise.

ld/ChangeLog
ld/emulparams/elf32bmip.sh
ld/emulparams/elf32bmipn32-defs.sh

index 8c7183aef404e81eb57354c1ce1a4408323c8800..d261fe2023519146af3befd00188f2f84cd6249e 100644 (file)
@@ -1,3 +1,8 @@
+2005-01-22  Richard Sandiford  <rsandifo@redhat.com>
+
+       * emulparams/elf32bmip.sh (OTHER_GOT_SECTIONS): Add ". = .;".
+       * emulparams/elf32bmipn32-defs.sh (OTHER_GOT_SECTIONS): Likewise.
+
 2005-01-21  Jakub Jelinek  <jakub@redhat.com>
 
        * ldgram.y (AS_NEEDED): New token.
index 7badcb84d7a089346ffd18681c92ebd63b762d14..3d99044b4134b18bd4fa3903cde247a2541c518b 100644 (file)
@@ -16,7 +16,12 @@ INITIAL_READONLY_SECTIONS="
   .reginfo      ${RELOCATING-0} : { *(.reginfo) }
 "
 OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
+# If the output has a GOT section, there must be exactly 0x7ff0 bytes
+# between .got and _gp.  The ". = ." below stops the orphan code from
+# inserting other sections between the assignment to _gp and the start
+# of .got.
 OTHER_GOT_SYMBOLS='
+  . = .;
   _gp = ALIGN(16) + 0x7ff0;
 '
 OTHER_SDATA_SECTIONS="
index f7b0d08f858f146a4b989bddef7c9ecb1fbb65b8..e234d3899a474d610532bc6368418c163930b5dd 100644 (file)
@@ -36,7 +36,12 @@ MAXPAGESIZE=0x100000
 ENTRY=__start
 
 # GOT-related settings.  
+# If the output has a GOT section, there must be exactly 0x7ff0 bytes
+# between .got and _gp.  The ". = ." below stops the orphan code from
+# inserting other sections between the assignment to _gp and the start
+# of .got.
 OTHER_GOT_SYMBOLS='
+  . = .;
   _gp = ALIGN(16) + 0x7ff0;
 '
 OTHER_SDATA_SECTIONS="