summaryrefslogtreecommitdiff
path: root/src/thread/i386/clone.s
blob: 4133915be6ed47aa9a233bc054ac907218e1ec9e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
.text
.global __uniclone
__uniclone:
	movl	4(%esp),%ecx
	subl	$24,%ecx
	movl	8(%esp),%eax
	movl	%eax,16(%ecx)
	movl	12(%esp),%eax
	movl	%eax,24(%ecx)
	pushl	%ebx
	pushl	%esi
	pushl	%edi
	pushl   %ebp
	movl    %eax,8(%eax)
	leal    20(%eax),%edx
	leal    4(%eax),%esi
	movl	%edx,%edi
	movl	$0x7d0f00,%ebx
	movl	$120,%eax
	int	$128
	popl    %ebp
	popl	%edi
	popl	%esi
	popl	%ebx
	ret