clarify the purpose of this project
[nyanglibc.git] / posix / getcpu.shared.s
blob1f1e1f755f7e58d81920b2aef7eab29a0db1153b
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___getcpu
9 .hidden __GI___getcpu
10 .type __GI___getcpu, @function
11 __GI___getcpu:
12 pushq %rbp
13 pushq %rbx
14 movq %rsi, %rbp
15 movq %rdi, %rbx
16 subq $8, %rsp
17 movq _rtld_global_ro@GOTPCREL(%rip), %rax
18 movq 712(%rax), %rax
19 testq %rax, %rax
20 je .L6
21 xorl %edx, %edx
22 call *%rax
23 movslq %eax, %rdx
24 cmpq $-4096, %rdx
25 jbe .L1
26 cmpq $-38, %rdx
27 je .L6
28 .L3:
29 movq __libc_errno@gottpoff(%rip), %rax
30 negl %edx
31 movl %edx, %fs:(%rax)
32 movl $-1, %eax
33 .L5:
34 .L1:
35 addq $8, %rsp
36 popq %rbx
37 popq %rbp
38 ret
39 .p2align 4,,10
40 .p2align 3
41 .L6:
42 xorl %edx, %edx
43 movq %rbp, %rsi
44 movq %rbx, %rdi
45 movl $309, %eax
46 #APP
47 # 27 "../sysdeps/unix/sysv/linux/getcpu.c" 1
48 syscall
50 # 0 "" 2
51 #NO_APP
52 cmpq $-4096, %rax
53 movq %rax, %rdx
54 ja .L3
55 jmp .L1
56 .size __GI___getcpu, .-__GI___getcpu
57 .weak getcpu
58 .set getcpu,__GI___getcpu
59 .globl __getcpu
60 .set __getcpu,__GI___getcpu