aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-arm
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2004-01-13 21:09:18 +0000
committerDaniel Jacobowitz <drow@false.org>2004-01-13 21:09:18 +0000
commit0885b73e8a827df0530bb2cee57affc5ecd9fa1e (patch)
tree14026c7c04b34f2ad4eeccedc712dc79dbdf42d4 /ld/testsuite/ld-arm
parentf532f3fa70bca3497edbcc37771da41a033e871c (diff)
downloadgdb-0885b73e8a827df0530bb2cee57affc5ecd9fa1e.zip
gdb-0885b73e8a827df0530bb2cee57affc5ecd9fa1e.tar.gz
gdb-0885b73e8a827df0530bb2cee57affc5ecd9fa1e.tar.bz2
* ld-arm/arm-elf.exp: Add arm-static-app test.
* ld-arm/arm-static-app.s, ld-arm/arm-static-app.d, ld-arm/arm-static-app.r: New files.
Diffstat (limited to 'ld/testsuite/ld-arm')
-rw-r--r--ld/testsuite/ld-arm/arm-elf.exp3
-rw-r--r--ld/testsuite/ld-arm/arm-static-app.d24
-rw-r--r--ld/testsuite/ld-arm/arm-static-app.r3
-rw-r--r--ld/testsuite/ld-arm/arm-static-app.s20
4 files changed, 50 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
index 0f99741..581ebb6 100644
--- a/ld/testsuite/ld-arm/arm-elf.exp
+++ b/ld/testsuite/ld-arm/arm-elf.exp
@@ -41,6 +41,9 @@ set armelftests {
{"Simple dynamic application" "tmpdir/arm-lib.so" "" {arm-app.s}
{{objdump -fdw arm-app.d} {objdump -Rw arm-app.r}}
"arm-app"}
+ {"Simple static application" "" "" {arm-static-app.s}
+ {{objdump -fdw arm-static-app.d} {objdump -rw arm-static-app.r}}
+ "arm-static-app"}
}
run_ld_link_tests $armelftests
diff --git a/ld/testsuite/ld-arm/arm-static-app.d b/ld/testsuite/ld-arm/arm-static-app.d
new file mode 100644
index 0000000..2d39b55
--- /dev/null
+++ b/ld/testsuite/ld-arm/arm-static-app.d
@@ -0,0 +1,24 @@
+
+tmpdir/arm-static-app: file format elf32-littlearm
+architecture: arm, flags 0x00000112:
+EXEC_P, HAS_SYMS, D_PAGED
+start address 0x.*
+
+Disassembly of section .text:
+
+.* <_start>:
+ .*: e1a0c00d mov ip, sp
+ .*: e92dd800 stmdb sp!, {fp, ip, lr, pc}
+ .*: eb000001 bl .* <app_func>
+ .*: e89d6800 ldmia sp, {fp, sp, lr}
+ .*: e12fff1e bx lr
+
+.* <app_func>:
+ .*: e1a0c00d mov ip, sp
+ .*: e92dd800 stmdb sp!, {fp, ip, lr, pc}
+ .*: eb000001 bl .* <app_func2>
+ .*: e89d6800 ldmia sp, {fp, sp, lr}
+ .*: e12fff1e bx lr
+
+.* <app_func2>:
+ .*: e12fff1e bx lr
diff --git a/ld/testsuite/ld-arm/arm-static-app.r b/ld/testsuite/ld-arm/arm-static-app.r
new file mode 100644
index 0000000..7c350dc
--- /dev/null
+++ b/ld/testsuite/ld-arm/arm-static-app.r
@@ -0,0 +1,3 @@
+
+tmpdir/arm-static-app: file format elf32-littlearm
+
diff --git a/ld/testsuite/ld-arm/arm-static-app.s b/ld/testsuite/ld-arm/arm-static-app.s
new file mode 100644
index 0000000..99c579f
--- /dev/null
+++ b/ld/testsuite/ld-arm/arm-static-app.s
@@ -0,0 +1,20 @@
+ .text
+ .globl _start
+_start:
+ mov ip, sp
+ stmdb sp!, {r11, ip, lr, pc}
+ bl app_func
+ ldmia sp, {r11, sp, lr}
+ bx lr
+
+ .globl app_func
+app_func:
+ mov ip, sp
+ stmdb sp!, {r11, ip, lr, pc}
+ bl app_func2
+ ldmia sp, {r11, sp, lr}
+ bx lr
+
+ .globl app_func2
+app_func2:
+ bx lr