getservbyport_r: fix wrong result if getnameinfo fails with EAI_OVERFLOW
[musl] / src / thread / s390x / syscall_cp.s
1         .global __cp_begin
2         .hidden __cp_begin
3         .global __cp_end
4         .hidden __cp_end
5         .global __cp_cancel
6         .hidden __cp_cancel
7         .hidden __cancel
8         .global __syscall_cp_asm
9         .hidden __syscall_cp_asm
10         .text
11         .type   __syscall_cp_asm,%function
12 __syscall_cp_asm:
13 __cp_begin:
14         icm %r2, 15, 0(%r2)
15         jne __cp_cancel
16
17         stg %r6, 48(%r15)
18         stg %r7, 56(%r15)
19         lgr %r1, %r3
20         lgr %r2, %r4
21         lgr %r3, %r5
22         lgr %r4, %r6
23         lg  %r5, 160(%r15)
24         lg  %r6, 168(%r15)
25         lg  %r7, 176(%r15)
26         svc 0
27
28 __cp_end:
29         lg  %r7, 56(%r15)
30         lg  %r6, 48(%r15)
31         br  %r14
32
33 __cp_cancel:
34         jg  __cancel