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