projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
use inline syscalls for powerpc (32-bit)
[musl]
/
src
/
thread
/
x32
/
syscall_cp.s
diff --git
a/src/thread/x32/syscall_cp.s
b/src/thread/x32/syscall_cp.s
index
788c53c
..
9805af0
100644
(file)
--- a/
src/thread/x32/syscall_cp.s
+++ b/
src/thread/x32/syscall_cp.s
@@
-1,13
+1,20
@@
.text
.text
-.global __syscall_cp_asm
-.type __syscall_cp_asm,@function
-__syscall_cp_asm:
-
.global __cp_begin
.global __cp_begin
+.hidden __cp_begin
+.global __cp_end
+.hidden __cp_end
+.global __cp_cancel
+.hidden __cp_cancel
+.hidden __cancel
+.global __syscall_cp_internal
+.hidden __syscall_cp_internal
+.type __syscall_cp_internal,@function
+__syscall_cp_internal:
+
__cp_begin:
mov (%rdi),%eax
test %eax,%eax
__cp_begin:
mov (%rdi),%eax
test %eax,%eax
- jnz __cancel
+ jnz __c
p_c
ancel
mov %rdi,%r11
mov %rsi,%rax
mov %rdx,%rdi
mov %rdi,%r11
mov %rsi,%rax
mov %rdx,%rdi
@@
-18,6
+25,7
@@
__cp_begin:
mov 16(%rsp),%r9
mov %r11,8(%rsp)
syscall
mov 16(%rsp),%r9
mov %r11,8(%rsp)
syscall
-.global __cp_end
__cp_end:
ret
__cp_end:
ret
+__cp_cancel:
+ jmp __cancel