diff options
author | Paul Brook <paul@codesourcery.com> | 2011-05-31 13:40:04 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2011-05-31 13:40:04 +0000 |
commit | 6e7ce2cdd34f7e3ad720e1d43a19635d79ce17b4 (patch) | |
tree | d8a159765825d07d54e8c5480dff705e6d356b1f /ld | |
parent | 12352d3f854285aaaecf6bc89df80e6247968a63 (diff) | |
download | gdb-6e7ce2cdd34f7e3ad720e1d43a19635d79ce17b4.zip gdb-6e7ce2cdd34f7e3ad720e1d43a19635d79ce17b4.tar.gz gdb-6e7ce2cdd34f7e3ad720e1d43a19635d79ce17b4.tar.bz2 |
2011-05-31 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
gas/
* config/tc-arm.c (fix_new_arm): Create an absolute symbol for
pc-relative fixes to constants.
* config/tc-arm.h (TC_FORCE_RELOCATATION_ABS): Define.
ld/testsuite/
* ld-arm/abs-call-1.d: New.
* ld-arm/abs-call-1.s: New.
* ld-arm/arm-elf.exp: Add it.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/abs-call-1.d | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/abs-call-1.s | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/arm-elf.exp | 3 |
4 files changed, 27 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index a652cde..586356e 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,4 +1,11 @@ 2011-05-31 Paul Brook <paul@codesourcery.com> + Nathan Sidwell <nathan@codesourcery.com> + + * ld-arm/abs-call-1.d: New. + * ld-arm/abs-call-1.s: New. + * ld-arm/arm-elf.exp: Add it. + +2011-05-31 Paul Brook <paul@codesourcery.com> * ld-arm/tls-longplt.d: Update expected output. * ld-arm/tls-thumb1.d: Ditto. diff --git a/ld/testsuite/ld-arm/abs-call-1.d b/ld/testsuite/ld-arm/abs-call-1.d new file mode 100644 index 0000000..4482beb --- /dev/null +++ b/ld/testsuite/ld-arm/abs-call-1.d @@ -0,0 +1,9 @@ +.*: file format elf32-.* + + +Disassembly of section .text: + +00008000 <arm>: + 8000: eb03dffe bl 100000 <foo> + 8004: ea03dffd b 100000 <foo> + 8008: eb03dffc bl 100000 <foo> diff --git a/ld/testsuite/ld-arm/abs-call-1.s b/ld/testsuite/ld-arm/abs-call-1.s new file mode 100644 index 0000000..c0a66b4 --- /dev/null +++ b/ld/testsuite/ld-arm/abs-call-1.s @@ -0,0 +1,8 @@ + + .type foo, %function + .set foo, 0x100000 + +arm: bl 0x100000 + b 0x100000 + bl foo + diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp index 95959f8..a8c51c2 100644 --- a/ld/testsuite/ld-arm/arm-elf.exp +++ b/ld/testsuite/ld-arm/arm-elf.exp @@ -413,6 +413,9 @@ set armelftests { {objdump {-s -j.data -j.got} ifunc-16.gd} {readelf -r ifunc-16.rd}} "ifunc-16"} + {"abs call" "-T arm.ld" "" {abs-call-1.s} + {{objdump -d abs-call-1.d}} + "abs-call-1"} } run_ld_link_tests $armelftests |