blob: d1a714d836a60b42d08d7d0bec68cd426470827f [file] [log] [blame]
Elliott Hughes103ccde2013-10-16 14:27:59 -07001/* Generated by gensyscalls.py. Do not edit. */
2
Elliott Hughesed744842013-11-07 10:31:05 -08003#include <private/bionic_asm.h>
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08004
Elliott Hughescac7b9d2013-10-23 09:48:29 -07005ENTRY(dup3)
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08006 pushl %ebx
Christopher Ferris15b91e92014-05-29 18:17:09 -07007 .cfi_def_cfa_offset 8
Christopher Ferrise4bc7562014-01-06 16:39:10 -08008 .cfi_rel_offset ebx, 0
Christopher Ferris15b91e92014-05-29 18:17:09 -07009 pushl %ecx
10 .cfi_adjust_cfa_offset 4
11 .cfi_rel_offset ecx, 0
12 pushl %edx
13 .cfi_adjust_cfa_offset 4
14 .cfi_rel_offset edx, 0
Elliott Hughescac7b9d2013-10-23 09:48:29 -070015 mov 16(%esp), %ebx
16 mov 20(%esp), %ecx
17 mov 24(%esp), %edx
18 movl $__NR_dup3, %eax
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080019 int $0x80
Elliott Hughes9aceab52013-03-12 14:57:30 -070020 cmpl $-MAX_ERRNO, %eax
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021 jb 1f
22 negl %eax
23 pushl %eax
24 call __set_errno
25 addl $4, %esp
26 orl $-1, %eax
271:
Elliott Hughescac7b9d2013-10-23 09:48:29 -070028 popl %edx
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080029 popl %ecx
30 popl %ebx
31 ret
Elliott Hughescac7b9d2013-10-23 09:48:29 -070032END(dup3)