aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2004-09-30 17:03:53 +0000
committerPaul Brook <paul@codesourcery.com>2004-09-30 17:03:53 +0000
commiteeac373afe5b54b040354ac7680c46ae7934aae0 (patch)
treeadbdf8e087159395d58867078a6a7d44060b0e72 /ld
parent56157dbefc9f44aa294e92b773224141aeef6237 (diff)
downloadgdb-eeac373afe5b54b040354ac7680c46ae7934aae0.zip
gdb-eeac373afe5b54b040354ac7680c46ae7934aae0.tar.gz
gdb-eeac373afe5b54b040354ac7680c46ae7934aae0.tar.bz2
bfd/
* elf32-arm.h (bfd_elf32_arm_set_target_relocs): Handle "abs" target2 relocation type. ld/ * ld.texinfo: Document --target2=abs. * emulparms/armsymbian.sh (TARGET2_TYPE): Set. ld/testsuite/ * ld-arm/arm-elf.exp: Add test for --target2=abs. * ld-arm/arm-target2-abs.d: New file.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/emulparams/armsymbian.sh1
-rw-r--r--ld/ld.texinfo4
-rw-r--r--ld/testsuite/ChangeLog5
-rw-r--r--ld/testsuite/ld-arm/arm-elf.exp3
-rw-r--r--ld/testsuite/ld-arm/arm-target2-abs.d5
6 files changed, 22 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index cfe0333..f9a0780 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-30 Paul Brook <paul@codesourcery.com>
+
+ * ld.texinfo: Document --target2=abs.
+ * emulparms/armsymbian.sh (TARGET2_TYPE): Set.
+
2004-09-29 Nick Clifton <nickc@redhat.com>
* scripttempl/xstormy16.sc: Only perform the assignments to the
diff --git a/ld/emulparams/armsymbian.sh b/ld/emulparams/armsymbian.sh
index ce3a963..6fd1d15 100644
--- a/ld/emulparams/armsymbian.sh
+++ b/ld/emulparams/armsymbian.sh
@@ -5,6 +5,7 @@ OUTPUT_FORMAT="elf32-littlearm-symbian"
BIG_OUTPUT_FORMAT="elf32-bigarm-symbian"
LITTLE_OUTPUT_FORMAT="$OUTPUT_FORMAT"
TARGET1_IS_REL=1
+TARGET2_TYPE=abs
# This value should match ELF_MAXPAGESIZE in BFD. Otherwise, elf.c
# will not place read-write sections in a separate ELF segment from
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index 8acc3c4..047933a 100644
--- a/ld/ld.texinfo
+++ b/ld/ld.texinfo
@@ -4922,7 +4922,9 @@ The @samp{--target2=type} switch overrides the default definition of the
meanings, and target defaults are as follows:
@table @samp
@item rel
-@samp{R_ARM_REL32} (arm*-*-symbianelf, arm*-*-elf, arm*-*-eabi)
+@samp{R_ARM_REL32} (arm*-*-elf, arm*-*-eabi)
+@item abs
+@samp{R_ARM_ABS32} (arm*-*-symbianelf)
@item got-rel
@samp{R_ARM_GOT_PREL} (arm*-*-linux, arm*-*-*bsd)
@end table
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index ac41e87..76de52b 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-30 Paul Brook <paul@codesourcery.com>
+
+ * ld-arm/arm-elf.exp: Add test for --target2=abs.
+ * ld-arm/arm-target2-abs.d: New file.
+
2004-09-29 Alan Modra <amodra@bigpond.net.au>
* ld-pe/secrel1.s: Pad .rdata out to 16 byte boundary.
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
index 17fb089..1de19e7 100644
--- a/ld/testsuite/ld-arm/arm-elf.exp
+++ b/ld/testsuite/ld-arm/arm-elf.exp
@@ -56,6 +56,9 @@ set armelftests {
{"target2-rel" "-static --target2=rel -T arm.ld" "" {arm-target2.s}
{{objdump -s arm-target2-rel.d}}
"arm-target2-rel"}
+ {"target2-abs" "-static --target2=abs -T arm.ld" "" {arm-target2.s}
+ {{objdump -s arm-target2-abs.d}}
+ "arm-target2-abs"}
{"target2-got-rel" "-static --target2=got-rel -T arm.ld" "" {arm-target2.s}
{{objdump -s arm-target2-got-rel.d}}
"arm-target2-got-rel"}
diff --git a/ld/testsuite/ld-arm/arm-target2-abs.d b/ld/testsuite/ld-arm/arm-target2-abs.d
new file mode 100644
index 0000000..81cc9cc
--- /dev/null
+++ b/ld/testsuite/ld-arm/arm-target2-abs.d
@@ -0,0 +1,5 @@
+
+.*: file format.*
+
+Contents of section .text:
+ 8000 (04800000|00008004) .*