]> oss.titaniummirror.com Git - msp430-binutils.git/blobdiff - ld/testsuite/ld-arm/unwind-4.s
Merge commit 'upstream/2.20'
[msp430-binutils.git] / ld / testsuite / ld-arm / unwind-4.s
diff --git a/ld/testsuite/ld-arm/unwind-4.s b/ld/testsuite/ld-arm/unwind-4.s
new file mode 100644 (file)
index 0000000..015311b
--- /dev/null
@@ -0,0 +1,49 @@
+       .syntax unified
+       .text
+       @ out of line table entry
+       .global _start
+       .type _start, %function
+_start:
+       .fnstart
+       .save {r4, lr}
+       .vsave {d0}
+       .vsave {d4}
+       bl _before
+       .fnend
+
+       @ entry that can be merged
+       .fnstart
+       .save {r4, lr}
+       bx lr
+       .fnend
+
+       @ Section that will be placed first
+       .section .before, "xa"
+       .type _before, %function
+_before:
+       .fnstart
+       .save {r4, lr}
+       bx lr
+       .fnend
+
+       @ section that will be placed last
+       .section .after, "xa"
+       .global __aeabi_unwind_cpp_pr0
+       .type __aeabi_unwind_cpp_pr0, %function
+__aeabi_unwind_cpp_pr0:
+       .fnstart
+       .save {r4, lr}
+       bx lr
+       .fnend
+       @ final function is cantunwind, so output table size is smaller
+       @ than sum of input sections
+       .global __aeabi_unwind_cpp_pr1
+       .type __aeabi_unwind_cpp_pr1, %function
+__aeabi_unwind_cpp_pr1:
+       .fnstart
+       .cantunwind
+       bx lr
+       .fnend
+
+       .section .far
+       .word 0