clarify the purpose of this project
[nyanglibc.git] / misc / setreuid.s
blobc61850cd4ef73ef5379043489e0ea3ec94df4a62
1 .text
2 .p2align 4,,15
3 .globl __setreuid
4 .type __setreuid, @function
5 __setreuid:
6 cmpq $0, __nptl_setxid@GOTPCREL(%rip)
7 jne .L11
8 movl $113, %eax
9 #APP
10 # 29 "../sysdeps/unix/sysv/linux/setreuid.c" 1
11 syscall
13 # 0 "" 2
14 #NO_APP
15 cmpq $-4096, %rax
16 ja .L12
17 rep ret
18 .p2align 4,,10
19 .p2align 3
20 .L11:
21 subq $56, %rsp
22 movl %edi, %eax
23 movq %rax, 8(%rsp)
24 movq %rsp, %rdi
25 movl %esi, %eax
26 movl $113, (%rsp)
27 movq %rax, 16(%rsp)
28 call __nptl_setxid@PLT
29 addq $56, %rsp
30 ret
31 .p2align 4,,10
32 .p2align 3
33 .L12:
34 movq __libc_errno@gottpoff(%rip), %rdx
35 negl %eax
36 movl %eax, %fs:(%rdx)
37 movl $-1, %eax
38 ret
39 .size __setreuid, .-__setreuid
40 .weak setreuid
41 .set setreuid,__setreuid
42 .weak __nptl_setxid
43 .hidden __nptl_setxid