clone.s raw

   1  .text
   2  .global __clone
   3  .hidden __clone
   4  .type   __clone,@function
   5  __clone:
   6  	movl $0x40000038,%eax /* SYS_clone */
   7  	mov %rdi,%r11
   8  	mov %rdx,%rdi
   9  	mov %r8,%rdx
  10  	mov %r9,%r8
  11  	mov 8(%rsp),%r10
  12  	mov %r11,%r9
  13  	and $-16,%rsi
  14  	sub $8,%rsi
  15  	mov %rcx,(%rsi)
  16  	syscall
  17  	test %eax,%eax
  18  	jnz 1f
  19  	xor %ebp,%ebp
  20  	pop %rdi
  21  	call *%r9
  22  	mov %eax,%edi
  23  	movl $0x4000003c,%eax /* SYS_exit */
  24  	syscall
  25  	hlt
  26  1:	ret
  27