initial commit of the arm port
[musl] / src / setjmp / arm / setjmp.s
diff --git a/src/setjmp/arm/setjmp.s b/src/setjmp/arm/setjmp.s
new file mode 100644 (file)
index 0000000..41e02d8
--- /dev/null
@@ -0,0 +1,17 @@
+.global __setjmp
+.global _setjmp
+.global setjmp
+.type __setjmp,%function
+.type _setjmp,%function
+.type setjmp,%function
+__setjmp:
+_setjmp:
+setjmp:
+       mov ip,r0
+       stmia ip!,{v1,v2,v3,v4,v5,v6,sl,fp}
+       mov r2,sp
+       stmia ip!,{r2,lr}
+       mov r0,#0
+       tst lr,#1
+       moveq pc,lr
+       bx lr