blob: 28e84d8e2c052635f540d3e2fe634d3727984590 [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
Dan Albertbc9f9f22014-08-08 15:19:20 -07005 .hidden __set_errno
6
Elliott Hughes7582a9c2013-02-06 17:08:15 -08007ENTRY(prctl)
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08008 pushl %ebx
Christopher Ferris15b91e92014-05-29 18:17:09 -07009 .cfi_def_cfa_offset 8
Christopher Ferrise4bc7562014-01-06 16:39:10 -080010 .cfi_rel_offset ebx, 0
Christopher Ferris15b91e92014-05-29 18:17:09 -070011 pushl %ecx
12 .cfi_adjust_cfa_offset 4
13 .cfi_rel_offset ecx, 0
14 pushl %edx
15 .cfi_adjust_cfa_offset 4
16 .cfi_rel_offset edx, 0
17 pushl %esi
18 .cfi_adjust_cfa_offset 4
19 .cfi_rel_offset esi, 0
20 pushl %edi
21 .cfi_adjust_cfa_offset 4
22 .cfi_rel_offset edi, 0
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080023 mov 24(%esp), %ebx
24 mov 28(%esp), %ecx
25 mov 32(%esp), %edx
26 mov 36(%esp), %esi
27 mov 40(%esp), %edi
28 movl $__NR_prctl, %eax
29 int $0x80
Elliott Hughes9aceab52013-03-12 14:57:30 -070030 cmpl $-MAX_ERRNO, %eax
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080031 jb 1f
32 negl %eax
33 pushl %eax
Dan Albert3726f9c2014-08-08 15:15:29 -070034 call __set_errno
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080035 addl $4, %esp
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800361:
37 popl %edi
38 popl %esi
39 popl %edx
40 popl %ecx
41 popl %ebx
42 ret
Elliott Hughes7582a9c2013-02-06 17:08:15 -080043END(prctl)