dynamic linker entry point for arm
authorRich Felker <dalias@aerifal.cx>
Sat, 1 Oct 2011 05:33:31 +0000 (01:33 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 1 Oct 2011 05:33:31 +0000 (01:33 -0400)
mildly tested, seems to work

src/ldso/arm/start.s [new file with mode: 0644]

diff --git a/src/ldso/arm/start.s b/src/ldso/arm/start.s
new file mode 100644 (file)
index 0000000..359711e
--- /dev/null
@@ -0,0 +1,14 @@
+.text
+.global _start
+_start:
+       ldr r0,[sp]
+       add r1,sp,#4
+       ldr r2,2f
+       add r2,pc,r2
+1:     bl __dynlink
+       mov r1,r0
+       mov r0,#0
+       tst r1,#1
+       moveq pc,r1
+       bx r1
+2:     .word _GLOBAL_OFFSET_TABLE_ - 1b - 4