restore use of .type in asm, but use modern @function (vs %function)
this seems to be necessary to make the linker accept the functions in a shared library (perhaps to generate PLT entries?) strictly speaking libc-internal asm should not need it. i might clean that up later.
This commit is contained in:
parent
836ba93d93
commit
c7d19f9923
20 changed files with 29 additions and 0 deletions
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __set_thread_area
|
||||
.type __set_thread_area,@function
|
||||
__set_thread_area:
|
||||
pushl %ebx
|
||||
movl 8(%esp),%ecx
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __unmapself
|
||||
.type __unmapself,@function
|
||||
__unmapself:
|
||||
movl $91,%eax
|
||||
movl 4(%esp),%ebx
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __pthread_register_cancel
|
||||
.type __pthread_register_cancel,@function
|
||||
__pthread_register_cancel:
|
||||
pushl %eax
|
||||
call __pthread_register_cancel_3
|
||||
|
|
@ -7,6 +8,7 @@ __pthread_register_cancel:
|
|||
ret
|
||||
|
||||
.global __pthread_unregister_cancel
|
||||
.type __pthread_unregister_cancel,@function
|
||||
__pthread_unregister_cancel:
|
||||
pushl %eax
|
||||
call __pthread_unregister_cancel_3
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __pthread_unwind_next
|
||||
.type __pthread_unwind_next,@function
|
||||
__pthread_unwind_next:
|
||||
pushl %eax
|
||||
call __pthread_unwind_next_3
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __uniclone
|
||||
.type __uniclone,@function
|
||||
__uniclone:
|
||||
movl 4(%esp),%ecx
|
||||
subl $24,%ecx
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __syscall_cp_asm
|
||||
.type __syscall_cp_asm,@function
|
||||
__syscall_cp_asm:
|
||||
pushl %ebx
|
||||
pushl %esi
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
/* Copyright 2011 Nicholas J. Kain, licensed GNU LGPL 2.1 or later */
|
||||
.text
|
||||
.global __set_thread_area
|
||||
.type __set_thread_area,@function
|
||||
__set_thread_area:
|
||||
mov %rdi,%rsi /* shift for syscall */
|
||||
movl $0x1002,%edi /* SET_FS register */
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
/* Copyright 2011 Nicholas J. Kain, licensed GNU LGPL 2.1 or later */
|
||||
.text
|
||||
.global __unmapself
|
||||
.type __unmapself,@function
|
||||
__unmapself:
|
||||
movl $11,%eax /* SYS_munmap */
|
||||
syscall /* munmap(arg2,arg3) */
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
/* Copyright 2011 Nicholas J. Kain, licensed GNU LGPL 2.1 or later */
|
||||
.text
|
||||
.global __uniclone
|
||||
.type __uniclone,@function
|
||||
/* rdi = child_stack, rsi = start, rdx = pthread_struct */
|
||||
__uniclone:
|
||||
subq $8,%rsp /* pad parent stack to prevent branch later */
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
.text
|
||||
.global __syscall_cp_asm
|
||||
.type __syscall_cp_asm,@function
|
||||
__syscall_cp_asm:
|
||||
lea 1f(%rip),%rax
|
||||
mov %rax,8(%rdi)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue