clarify the purpose of this project
[nyanglibc.git] / io / open64_nocancel.shared.s
blob656a05372afd993d1f85a04e32e9562dd166809f
1 .text
2 #APP
3 memmove = __GI_memmove
4 memset = __GI_memset
5 memcpy = __GI_memcpy
6 #NO_APP
7 .p2align 4,,15
8 .globl __GI___open64_nocancel
9 .hidden __GI___open64_nocancel
10 .type __GI___open64_nocancel, @function
11 __GI___open64_nocancel:
12 movl %esi, %r10d
13 movq %rdx, -32(%rsp)
14 andl $64, %r10d
15 jne .L2
16 movl %esi, %eax
17 andl $4259840, %eax
18 cmpl $4259840, %eax
19 je .L2
20 .L3:
21 movl %esi, %edx
22 movl $257, %eax
23 movq %rdi, %rsi
24 movl $-100, %edi
25 #APP
26 # 45 "../sysdeps/unix/sysv/linux/open64_nocancel.c" 1
27 syscall
29 # 0 "" 2
30 #NO_APP
31 cmpq $-4096, %rax
32 ja .L9
33 rep ret
34 .p2align 4,,10
35 .p2align 3
36 .L2:
37 leaq 8(%rsp), %rax
38 movl $16, -72(%rsp)
39 movl -32(%rsp), %r10d
40 movq %rax, -64(%rsp)
41 leaq -48(%rsp), %rax
42 movq %rax, -56(%rsp)
43 jmp .L3
44 .p2align 4,,10
45 .p2align 3
46 .L9:
47 movq __libc_errno@gottpoff(%rip), %rdx
48 negl %eax
49 movl %eax, %fs:(%rdx)
50 movl $-1, %eax
51 ret
52 .size __GI___open64_nocancel, .-__GI___open64_nocancel
53 .globl __open64_nocancel
54 .set __open64_nocancel,__GI___open64_nocancel
55 .globl __GI___open_nocancel
56 .hidden __GI___open_nocancel
57 .set __GI___open_nocancel,__open64_nocancel
58 .globl __open_nocancel
59 .set __open_nocancel,__GI___open_nocancel