diff options
Diffstat (limited to 'src/thread/m68k/clone.s')
| -rw-r--r-- | src/thread/m68k/clone.s | 24 | 
1 files changed, 24 insertions, 0 deletions
| diff --git a/src/thread/m68k/clone.s b/src/thread/m68k/clone.s new file mode 100644 index 00000000..5b61b6fa --- /dev/null +++ b/src/thread/m68k/clone.s @@ -0,0 +1,24 @@ +.text +.global __clone +.type   __clone,@function +__clone: +	movem.l %d2-%d5,-(%sp) +	move.l #120,%d0 +	move.l 28(%sp),%d1 +	move.l 24(%sp),%d2 +	and.l #-16,%d2 +	move.l 36(%sp),%d3 +	move.l 44(%sp),%d4 +	move.l 40(%sp),%d5 +	move.l 20(%sp),%a0 +	move.l 32(%sp),%a1 +	trap #0 +	tst.l %d0 +	beq 1f +	movem.l (%sp)+,%d2-%d5 +	rts +1:	move.l %a1,-(%sp) +	jsr (%a0) +	move.l #1,%d0 +	trap #0 +	clr.b 0 | 
