diff options
author | Paul Brook <paul@codesourcery.com> | 2008-03-08 01:20:39 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2008-03-08 01:20:39 +0000 |
commit | 39623e120c11861d80f4859ccf3e7b77b7c15fa3 (patch) | |
tree | c3b3b4d318c5eee2423edcdef40bf8b4b984769e /ld/testsuite/ld-arm/movw-merge.s | |
parent | 460b2855087fab29ecd3b0546ec28ecb259e45ab (diff) | |
download | gdb-39623e120c11861d80f4859ccf3e7b77b7c15fa3.zip gdb-39623e120c11861d80f4859ccf3e7b77b7c15fa3.tar.gz gdb-39623e120c11861d80f4859ccf3e7b77b7c15fa3.tar.bz2 |
2008-03-07 Paul Brook <paul@codesourcery.com>
bfd/
* elf32-arm.c (elf32_arm_howto_table_1): Fix bitmasks for MOVW and
MOVT relocations.
(elf32_arm_final_link_relocate): Fix off by one MOVW/MOVT sign
extension.
(elf32_arm_relocate_section): Handle MOVW and MOVT
relocations. Improve safety check for other weird relocations.
(elf32_arm_check_relocs): Only set h->needs_plt for branch/call
relocations.
gas/
* config/tc-arm.c (md_apply_fix): Use correct offset range.
ld/testsuite/
* ld-arm/arm-elf.exp (armelftests): Add movw-merge and arm-app-movw.
* ld-arm/arm-app-movw.s: New test.
* ld-arm/arm-app.r: Update expected output.
* ld-arm/movw-merge.d: New test.
* ld-arm/movw-merge.s: New test.
Diffstat (limited to 'ld/testsuite/ld-arm/movw-merge.s')
-rw-r--r-- | ld/testsuite/ld-arm/movw-merge.s | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/movw-merge.s b/ld/testsuite/ld-arm/movw-merge.s new file mode 100644 index 0000000..17c70a5 --- /dev/null +++ b/ld/testsuite/ld-arm/movw-merge.s @@ -0,0 +1,20 @@ + .arch armv7-a + .syntax unified + .text + .global _start + .type _start, %function +_start: + movw r0, #:lower16:.LC0 + movt r0, #:upper16:.LC0 + .thumb + .global tfunc + .type tfunc, %function +tfunc: + movw r0, #:lower16:.LC0 + movt r0, #:upper16:.LC0 + + .section .rodata.str1.4,"aMS",%progbits,1 + .align 2 + .ascii "pad" +.LC0: + .ascii "inner: cont \000" |