diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ld-arm/callweak.d | 17 | ||||
-rw-r--r-- | ld/testsuite/ld-arm/callweak.s | 16 |
2 files changed, 33 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/callweak.d b/ld/testsuite/ld-arm/callweak.d new file mode 100644 index 0000000..3dffcc4 --- /dev/null +++ b/ld/testsuite/ld-arm/callweak.d @@ -0,0 +1,17 @@ + +.*: file format.* + +Disassembly of section .far: + +12340000 <[^>]*>: +12340000: eaffffff b 12340004 <[^>]*> +12340004: 0affffff beq 12340008 <[^>]*> + +12340008 <[^>]*>: +12340008: e000 b.n 1234000c <[^>]*> +1234000a: bf00 nop +1234000c: 2000 movs r0, #0 +1234000e: e000 b.n 12340012 <[^>]*> +12340010: bf00 nop +12340012: 4770 bx lr + diff --git a/ld/testsuite/ld-arm/callweak.s b/ld/testsuite/ld-arm/callweak.s new file mode 100644 index 0000000..6850da3 --- /dev/null +++ b/ld/testsuite/ld-arm/callweak.s @@ -0,0 +1,16 @@ + .syntax unified + .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 |