aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-arm/preempt-app.s
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite/ld-arm/preempt-app.s')
-rw-r--r--ld/testsuite/ld-arm/preempt-app.s27
1 files changed, 27 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/preempt-app.s b/ld/testsuite/ld-arm/preempt-app.s
new file mode 100644
index 0000000..f1eccc2
--- /dev/null
+++ b/ld/testsuite/ld-arm/preempt-app.s
@@ -0,0 +1,27 @@
+ @ Preempt an ARM shared library function with a Thumb function
+ @ in the application.
+ .text
+ .p2align 4
+ .globl _start
+_start:
+ mov ip, sp
+ stmdb sp!, {r11, ip, lr, pc}
+ bl lib_func1
+ ldmia sp, {r11, sp, lr}
+ bx lr
+
+ .p2align 4
+ .globl app_func2
+ .type app_func2,%function
+app_func2:
+ bx lr
+
+ .p2align 4
+ .globl lib_func1
+ .type lib_func1,%function
+ .thumb_func
+lib_func1:
+ bx lr
+
+ .data
+ .long data_obj