aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog12
-rw-r--r--ld/Makefile.am4
-rw-r--r--ld/Makefile.in4
-rw-r--r--ld/emulparams/elf32bmipn32-defs.sh2
-rw-r--r--ld/emulparams/elf64bmip-defs.sh3
-rwxr-xr-xld/emulparams/elf64bmip.sh3
-rw-r--r--ld/emulparams/elf64btsmip.sh3
-rw-r--r--ld/testsuite/ChangeLog10
-rw-r--r--ld/testsuite/ld-mips-elf/branch-misc-1.d26
-rw-r--r--ld/testsuite/ld-mips-elf/jalbal.d10
-rw-r--r--ld/testsuite/ld-mips-elf/jaloverflow-2.d4
-rw-r--r--ld/testsuite/ld-mips-elf/reloc-3-n32.d12
-rw-r--r--ld/testsuite/ld-mips-elf/reloc-3.d12
-rw-r--r--ld/testsuite/ld-mips-elf/textrel-1.d2
14 files changed, 67 insertions, 40 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 77d813c..258e92f 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,15 @@
+2006-10-16 Richard Sandiford <richard@codesourcery.com>
+
+ * Makefile.am (eelf64bmip.c): Depend on emulparams/elf64bmip-defs.sh.
+ (eelf64btsmip.c, eelf64ltsmip.c): Likewise.
+ * Makefile.in: Regenerate.
+ * emulparams/elf32bmipn32-defs.sh (INITIAL_READONLY_SECTIONS): Include
+ .reginfo rather than .MIPS.options.
+ * emulparams/elf64bmip-defs.sh: New file.
+ * emulparams/elf64bmip.sh: Include it.
+ (COMMONPAGESIZE): Delete.
+ * emulparams/elf64btsmip.sh: As for elf64bmip.sh.
+
2006-10-12 Bob Wilson <bob.wilson@acm.org>
* emultempl/xtensaelf.em (is_inconsistent_linkonce_section): Check
diff --git a/ld/Makefile.am b/ld/Makefile.am
index ee96f29..b07a41c 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -912,6 +912,7 @@ eelf64_sparc_fbsd.c: $(srcdir)/emulparams/elf64_sparc_fbsd.sh \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64_sparc_fbsd "$(tdir_elf64_sparc_fbsd)"
eelf64bmip.c: $(srcdir)/emulparams/elf64bmip.sh \
+ $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/irix.em $(srcdir)/emultempl/mipself.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
@@ -926,11 +927,12 @@ emmo.c: $(srcdir)/emulparams/mmo.sh $(srcdir)/emultempl/mmix-elfnmmo.em \
$(srcdir)/scripttempl/mmo.sc ${GEN_DEPENDS}
${GENSCRIPTS} mmo "$(tdir_mmo)"
eelf64btsmip.c: $(srcdir)/emulparams/elf64btsmip.sh \
+ $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64btsmip "$(tdir_elf64btsmip)"
eelf64ltsmip.c: $(srcdir)/emulparams/elf64ltsmip.sh \
- $(srcdir)/emulparams/elf64btsmip.sh \
+ $(srcdir)/emulparams/elf64btsmip.sh $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ltsmip "$(tdir_elf64ltsmip)"
diff --git a/ld/Makefile.in b/ld/Makefile.in
index 49337c2..daed6f8 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -1723,6 +1723,7 @@ eelf64_sparc_fbsd.c: $(srcdir)/emulparams/elf64_sparc_fbsd.sh \
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64_sparc_fbsd "$(tdir_elf64_sparc_fbsd)"
eelf64bmip.c: $(srcdir)/emulparams/elf64bmip.sh \
+ $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/irix.em $(srcdir)/emultempl/mipself.em \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
@@ -1737,11 +1738,12 @@ emmo.c: $(srcdir)/emulparams/mmo.sh $(srcdir)/emultempl/mmix-elfnmmo.em \
$(srcdir)/scripttempl/mmo.sc ${GEN_DEPENDS}
${GENSCRIPTS} mmo "$(tdir_mmo)"
eelf64btsmip.c: $(srcdir)/emulparams/elf64btsmip.sh \
+ $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64btsmip "$(tdir_elf64btsmip)"
eelf64ltsmip.c: $(srcdir)/emulparams/elf64ltsmip.sh \
- $(srcdir)/emulparams/elf64btsmip.sh \
+ $(srcdir)/emulparams/elf64btsmip.sh $(srcdir)/emulparams/elf64bmip-defs.sh \
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} elf64ltsmip "$(tdir_elf64ltsmip)"
diff --git a/ld/emulparams/elf32bmipn32-defs.sh b/ld/emulparams/elf32bmipn32-defs.sh
index 4c98340..024aebe 100644
--- a/ld/emulparams/elf32bmipn32-defs.sh
+++ b/ld/emulparams/elf32bmipn32-defs.sh
@@ -57,7 +57,7 @@ TEXT_START_SYMBOLS='_ftext = . ;'
DATA_START_SYMBOLS='_fdata = . ;'
OTHER_BSS_SYMBOLS='_fbss = .;'
-INITIAL_READONLY_SECTIONS=".MIPS.options : { *(.MIPS.options) }"
+INITIAL_READONLY_SECTIONS=".reginfo ${RELOCATING-0} : { *(.reginfo) }"
# Discard any .MIPS.content* or .MIPS.events* sections. The linker
# doesn't know how to adjust them.
OTHER_SECTIONS="/DISCARD/ : { *(.MIPS.content*) *(.MIPS.events*) }"
diff --git a/ld/emulparams/elf64bmip-defs.sh b/ld/emulparams/elf64bmip-defs.sh
new file mode 100644
index 0000000..110f892
--- /dev/null
+++ b/ld/emulparams/elf64bmip-defs.sh
@@ -0,0 +1,3 @@
+. ${srcdir}/emulparams/elf32bmipn32-defs.sh
+COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
+INITIAL_READONLY_SECTIONS=".MIPS.options : { *(.MIPS.options) }"
diff --git a/ld/emulparams/elf64bmip.sh b/ld/emulparams/elf64bmip.sh
index 3910bea..0df6528 100755
--- a/ld/emulparams/elf64bmip.sh
+++ b/ld/emulparams/elf64bmip.sh
@@ -1,9 +1,8 @@
-. ${srcdir}/emulparams/elf32bmipn32-defs.sh
+. ${srcdir}/emulparams/elf64bmip-defs.sh
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="
diff --git a/ld/emulparams/elf64btsmip.sh b/ld/emulparams/elf64btsmip.sh
index f6e8dcf..b9e80bb 100644
--- a/ld/emulparams/elf64btsmip.sh
+++ b/ld/emulparams/elf64btsmip.sh
@@ -1,11 +1,10 @@
# If you change this file, please also look at files which source this one:
# elf64ltsmip.sh
-. ${srcdir}/emulparams/elf32bmipn32-defs.sh
+. ${srcdir}/emulparams/elf64bmip-defs.sh
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.*)'
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 63770f0..72ac66e 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2006-10-16 Richard Sandiford <richard@codesourcery.com>
+
+ * ld-mips-elf/branch-misc-1.d: Set the start address to 0x20000000.
+ * ld-mips-elf/jalbal.d: Likewise 0x200000a0.
+ * ld-mips-elf/jaloverflow-2.d: Likewise 0x20000000.
+ * ld-mips-elf/reloc-3-n32.d: Likewise.
+ * ld-mips-elf/reloc-3.d: Likewise.
+ * ld-mips-elf/textrel-1.d: Don't require a specific file offset for
+ .dynamic.
+
2006-10-03 Jakub Jelinek <jakub@redhat.com>
* ld-elf/eh4.d: New test.
diff --git a/ld/testsuite/ld-mips-elf/branch-misc-1.d b/ld/testsuite/ld-mips-elf/branch-misc-1.d
index 36bceb7..0cd3701 100644
--- a/ld/testsuite/ld-mips-elf/branch-misc-1.d
+++ b/ld/testsuite/ld-mips-elf/branch-misc-1.d
@@ -1,7 +1,7 @@
#name: MIPS branch-misc-1
#source: ../../../gas/testsuite/gas/mips/branch-misc-1.s
#objdump: --prefix-addresses -tdr --show-raw-insn
-#ld: -Ttext 0x500000 -e 0x500000 -N
+#ld: -Ttext 0x20000000 -e 0x20000000 -N
.*: file format elf.*mips.*
@@ -11,18 +11,18 @@ Disassembly of section \.text:
\.\.\.
\.\.\.
\.\.\.
-0+50003c <[^>]*> 0411fff0 bal 0+500000 <[^>]*>
-0+500040 <[^>]*> 00000000 nop
-0+500044 <[^>]*> 0411fff3 bal 0+500014 <[^>]*>
-0+500048 <[^>]*> 00000000 nop
-0+50004c <[^>]*> 0411fff6 bal 0+500028 <[^>]*>
-0+500050 <[^>]*> 00000000 nop
-0+500054 <[^>]*> 0411000a bal 0+500080 <[^>]*>
-0+500058 <[^>]*> 00000000 nop
-0+50005c <[^>]*> 0411000d bal 0+500094 <[^>]*>
-0+500060 <[^>]*> 00000000 nop
-0+500064 <[^>]*> 04110010 bal 0+5000a8 <[^>]*>
-0+500068 <[^>]*> 00000000 nop
+0*2000003c <[^>]*> 0411fff0 bal 0*20000000 <[^>]*>
+0*20000040 <[^>]*> 00000000 nop
+0*20000044 <[^>]*> 0411fff3 bal 0*20000014 <[^>]*>
+0*20000048 <[^>]*> 00000000 nop
+0*2000004c <[^>]*> 0411fff6 bal 0*20000028 <[^>]*>
+0*20000050 <[^>]*> 00000000 nop
+0*20000054 <[^>]*> 0411000a bal 0*20000080 <[^>]*>
+0*20000058 <[^>]*> 00000000 nop
+0*2000005c <[^>]*> 0411000d bal 0*20000094 <[^>]*>
+0*20000060 <[^>]*> 00000000 nop
+0*20000064 <[^>]*> 04110010 bal 0*200000a8 <[^>]*>
+0*20000068 <[^>]*> 00000000 nop
\.\.\.
\.\.\.
\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/jalbal.d b/ld/testsuite/ld-mips-elf/jalbal.d
index bc9a512..49cda75 100644
--- a/ld/testsuite/ld-mips-elf/jalbal.d
+++ b/ld/testsuite/ld-mips-elf/jalbal.d
@@ -1,7 +1,7 @@
#name: jal to bal
#source: jalbal.s
#as: -EB -n32 -march=rm9000
-#ld: -EB -e s1 -Ttext 0x100000a0
+#ld: -EB -e s1 -Ttext 0x200000a0
#objdump: -d
.*file format elf.*mips.*
@@ -9,16 +9,16 @@
Disassembly of section \.text:
.* <s1>:
-.* 0c00802a jal .*100200a8 <s3>
+.* 0c00802a jal .*200200a8 <s3>
.* 00000000 nop
-.* 04117fff bal .*100200a8 <s3>
+.* 04117fff bal .*200200a8 <s3>
.* <s2>:
.* \.\.\.
.* <s3>:
-.* 04118000 bal .*100000ac <s2>
+.* 04118000 bal .*200000ac <s2>
.* 00000000 nop
-.* 0c00002b jal .*100000ac <s2>
+.* 0c00002b jal .*200000ac <s2>
.* 00000000 nop
.* \.\.\.
diff --git a/ld/testsuite/ld-mips-elf/jaloverflow-2.d b/ld/testsuite/ld-mips-elf/jaloverflow-2.d
index b28b4ed..b40f428 100644
--- a/ld/testsuite/ld-mips-elf/jaloverflow-2.d
+++ b/ld/testsuite/ld-mips-elf/jaloverflow-2.d
@@ -1,8 +1,8 @@
#name: JAL overflow 2
#source: jaloverflow-2.s
#as:
-#ld: -Ttext=0x10000000 -e start
+#ld: -Ttext=0x20000000 -e start
#objdump: -dr
#...
-0*10000000: 0c000000.*
+0*20000000: 0c000000.*
#pass
diff --git a/ld/testsuite/ld-mips-elf/reloc-3-n32.d b/ld/testsuite/ld-mips-elf/reloc-3-n32.d
index 61cb276..e90180b 100644
--- a/ld/testsuite/ld-mips-elf/reloc-3-n32.d
+++ b/ld/testsuite/ld-mips-elf/reloc-3-n32.d
@@ -2,7 +2,7 @@
#source: ../../../gas/testsuite/gas/mips/elf-rel6.s
#as: -march=mips64 -mabi=n32 -EB
#objdump: --prefix-addresses -tdr --show-raw-insn
-#ld: -Ttext 0x500000 -e 0x500000 -N -melf32btsmipn32
+#ld: -Ttext 0x20000000 -e 0x20000000 -N -melf32btsmipn32
.*: file format elf.*mips.*
@@ -10,9 +10,9 @@
#...
Disassembly of section \.text:
-0+500000 <[^>]*> f010 8352 lb v0,-32750\(v1\)
-0+500004 <[^>]*> f010 8353 lb v0,-32749\(v1\)
-0+500008 <[^>]*> f252 8346 lb v0,-28090\(v1\)
-0+50000c <[^>]*> 6500 nop
-0+50000e <[^>]*> 6500 nop
+0*20000000 <[^>]*> f010 8352 lb v0,-32750\(v1\)
+0*20000004 <[^>]*> f010 8353 lb v0,-32749\(v1\)
+0*20000008 <[^>]*> f252 8346 lb v0,-28090\(v1\)
+0*2000000c <[^>]*> 6500 nop
+0*2000000e <[^>]*> 6500 nop
#pass
diff --git a/ld/testsuite/ld-mips-elf/reloc-3.d b/ld/testsuite/ld-mips-elf/reloc-3.d
index 632d999..1ec51c5 100644
--- a/ld/testsuite/ld-mips-elf/reloc-3.d
+++ b/ld/testsuite/ld-mips-elf/reloc-3.d
@@ -1,16 +1,16 @@
#name: R_MIPS16_GPREL reloc
#source: ../../../gas/testsuite/gas/mips/elf-rel6.s
#objdump: --prefix-addresses -tdr --show-raw-insn
-#ld: -Ttext 0x500000 -e 0x500000 -N
+#ld: -Ttext 0x20000000 -e 0x20000000 -N
.*: file format elf.*mips.*
#...
Disassembly of section \.text:
-0+500000 <[^>]*> f010 8352 lb v0,-32750\(v1\)
-0+500004 <[^>]*> f010 8353 lb v0,-32749\(v1\)
-0+500008 <[^>]*> f252 8346 lb v0,-28090\(v1\)
-0+50000c <[^>]*> 6500 nop
-0+50000e <[^>]*> 6500 nop
+0*20000000 <[^>]*> f010 8352 lb v0,-32750\(v1\)
+0*20000004 <[^>]*> f010 8353 lb v0,-32749\(v1\)
+0*20000008 <[^>]*> f252 8346 lb v0,-28090\(v1\)
+0*2000000c <[^>]*> 6500 nop
+0*2000000e <[^>]*> 6500 nop
#pass
diff --git a/ld/testsuite/ld-mips-elf/textrel-1.d b/ld/testsuite/ld-mips-elf/textrel-1.d
index 7172bb7..945c863 100644
--- a/ld/testsuite/ld-mips-elf/textrel-1.d
+++ b/ld/testsuite/ld-mips-elf/textrel-1.d
@@ -4,7 +4,7 @@
#ld: -shared -melf32btsmipn32
#readelf: -d
-Dynamic section at offset 0xb4 contains 18 entries:
+Dynamic section at offset .* contains 18 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x[0-9a-f]*
0x00000005 \(STRTAB\) 0x[0-9a-f]*