diff options
author | midipix <writeonce@midipix.org> | 2019-01-08 05:49:33 -0500 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2019-01-09 22:43:17 -0500 |
commit | 6eaa6b836e9d955d3b528caafaf1233b1b0f83e2 (patch) | |
tree | 047a5e5e944c8a7aaf421ae5cdaaa44ba2e9b7a8 /src/thread/nt64 | |
parent | d88860fd0c6ce41a01c0319bc938db87227a8b39 (diff) | |
download | mmglue-6eaa6b836e9d955d3b528caafaf1233b1b0f83e2.tar.bz2 mmglue-6eaa6b836e9d955d3b528caafaf1233b1b0f83e2.tar.xz |
mmglue: syscall_cp: added the bits needed by recent musl versions.
Diffstat (limited to 'src/thread/nt64')
-rw-r--r-- | src/thread/nt64/syscall_cp.s | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/thread/nt64/syscall_cp.s b/src/thread/nt64/syscall_cp.s index 7d4cbaf..27b649d 100644 --- a/src/thread/nt64/syscall_cp.s +++ b/src/thread/nt64/syscall_cp.s @@ -1,13 +1,19 @@ .text -.globl __syscall_cp_asm -.globl __cp_begin -.globl __cp_end +.global __cp_begin +.global __cp_end +.global __cp_cancel +.global __syscall_cp_asm + +.def __cp_begin; .scl 2; .type 32; .endef +.def __cp_end; .scl 2; .type 32; .endef +.def __cp_cancel; .scl 2; .type 32; .endef +.def __syscall_cp_asm; .scl 2; .type 32; .endef __syscall_cp_asm: __cp_begin: movq (%rcx), %rcx # check content of ptr test %ecx, %ecx - jnz __cancel # thread is pending cancellation + jnz __cp_cancel # thread is pending cancellation movq %rdx, %rcx # move water movq %r8, %rdx # from one glass @@ -28,19 +34,30 @@ __cp_begin: __cp_end: ret +__cp_cancel: + jmp __cancel + .section .got$__syscall_cp_asm .global __imp___syscall_cp_asm __imp___syscall_cp_asm: .quad __syscall_cp_asm - + .linkonce discard .section .got$__cp_begin .global __imp___cp_begin __imp___cp_begin: .quad __cp_begin + .linkonce discard .section .got$__cp_end .global __imp___cp_end __imp___cp_end: .quad __cp_end + .linkonce discard + + .section .got$__cp_cancel + .global __imp___cp_cancel +__imp___cp_cancel: + .quad __cp_cancel + .linkonce discard |