add sh asm for vfork
authorRich Felker <dalias@aerifal.cx>
Thu, 11 Jun 2015 05:01:04 +0000 (05:01 +0000)
committerRich Felker <dalias@aerifal.cx>
Thu, 11 Jun 2015 05:01:04 +0000 (05:01 +0000)
src/process/sh/vfork.s [new file with mode: 0644]

diff --git a/src/process/sh/vfork.s b/src/process/sh/vfork.s
new file mode 100644 (file)
index 0000000..30e1731
--- /dev/null
@@ -0,0 +1,23 @@
+.global __vfork
+.weak vfork
+.type __vfork,@function
+.type vfork,@function
+__vfork:
+vfork:
+       mov #95, r3
+       add r3, r3
+
+       trapa #16
+       or    r0, r0
+       or    r0, r0
+       or    r0, r0
+       or    r0, r0
+       or    r0, r0
+
+       mov r0, r4
+       mov.l 1f, r0
+2:     braf r0
+        nop
+       .align 2
+       .hidden __syscall_ret
+1:     .long __syscall_ret@PLT-(2b+4-.)