diff options
author | Daniel Gutson <dgutson@codesourcery.com> | 2009-08-21 23:38:07 +0000 |
---|---|---|
committer | Daniel Gutson <dgutson@codesourcery.com> | 2009-08-21 23:38:07 +0000 |
commit | cd1dac3d4a9145d560bf6f726a227119a087be23 (patch) | |
tree | 547659bc2cb709dfe7d02210dfbbf995009462be /ld/testsuite/ld-arm | |
parent | 62af60e2daf96e527c442d06661cbbde253c777b (diff) | |
download | gdb-cd1dac3d4a9145d560bf6f726a227119a087be23.zip gdb-cd1dac3d4a9145d560bf6f726a227119a087be23.tar.gz gdb-cd1dac3d4a9145d560bf6f726a227119a087be23.tar.bz2 |
2S09-08-21 Daniel Gutson <dgutson@codesourcery.com>
ld/
* ld-arm/callweak.d: Opcodes updated.
* ld-arm/callweak.s: Architecture specified.
* ld-arm/callweak-2.d: New test case.
* ld-arm/callweak-2.s: New file.
bfd/
* elf32-arm.c (arch_has_thumb2_nop): New function.
(arch_has_arm_nop): New function.
(elf32_arm_final_link_relocate): NOP opcodes changed.
SVS: ----------------------------------------------------------------------
Diffstat (limited to 'ld/testsuite/ld-arm')
-rw-r--r-- | ld/testsuite/ld-arm/callweak-2.d | 15 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/callweak-2.s | 17 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/callweak.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/callweak.s | 1 |
4 files changed, 35 insertions, 2 deletions
diff --git a/ld/testsuite/ld-arm/callweak-2.d b/ld/testsuite/ld-arm/callweak-2.d new file mode 100644 index 0000000..d401479 --- /dev/null +++ b/ld/testsuite/ld-arm/callweak-2.d @@ -0,0 +1,15 @@ + +.*: file format.* + +Disassembly of section .far: + +12340000 <[^>]*>: +12340000: e320f000 nop \{0\} +12340004: 0320f000 nopeq \{0\} + +12340008 <[^>]*>: +12340008: f3af 8000 nop.w +1234000c: 2000 movs r0, #0 +1234000e: f3af 8000 nop.w +12340012: 4770 bx lr + diff --git a/ld/testsuite/ld-arm/callweak-2.s b/ld/testsuite/ld-arm/callweak-2.s new file mode 100644 index 0000000..af4f026 --- /dev/null +++ b/ld/testsuite/ld-arm/callweak-2.s @@ -0,0 +1,17 @@ + .syntax unified + .arch armv6t2 + .weak bar + .section .far, "ax", %progbits + .global _start + .type _start, %function +_start: + bl bar + bleq bar + .thumb + .type foo, %function + .thumb_func +foo: + bl bar + movs r0, #0 + bl bar + bx lr diff --git a/ld/testsuite/ld-arm/callweak.d b/ld/testsuite/ld-arm/callweak.d index 3dffcc4..89cb4a5 100644 --- a/ld/testsuite/ld-arm/callweak.d +++ b/ld/testsuite/ld-arm/callweak.d @@ -4,8 +4,8 @@ Disassembly of section .far: 12340000 <[^>]*>: -12340000: eaffffff b 12340004 <[^>]*> -12340004: 0affffff beq 12340008 <[^>]*> +12340000: e1a00000 nop ; \(mov r0, r0\) +12340004: 01a00000 moveq r0, r0 12340008 <[^>]*>: 12340008: e000 b.n 1234000c <[^>]*> diff --git a/ld/testsuite/ld-arm/callweak.s b/ld/testsuite/ld-arm/callweak.s index 6850da3..b9bcd1b 100644 --- a/ld/testsuite/ld-arm/callweak.s +++ b/ld/testsuite/ld-arm/callweak.s @@ -1,4 +1,5 @@ .syntax unified + .arch armv6 .weak bar .section .far, "ax", %progbits .global _start |