提交 f5f7673d 编写于 作者: R Rich Felker

make arch __clone backends hidden

these are not a public interface and are not intended to be callable
from anywhere but the public clone function or other places in libc.
上级 1bbe166e
......@@ -141,7 +141,7 @@ int __init_tp(void *);
void *__copy_tls(unsigned char *);
void __reset_tls();
int __clone(int (*)(void *), void *, int, void *, ...);
hidden int __clone(int (*)(void *), void *, int, void *, ...);
int __set_thread_area(void *);
int __libc_sigaction(int, const struct sigaction *, struct sigaction *);
void __unmapself(void *, size_t);
......
......@@ -5,6 +5,7 @@
// x8, x0, x1, x2, x3, x4
.global __clone
.hidden __clone
.type __clone,%function
__clone:
// align stack and save func,arg
......
.syntax unified
.text
.global __clone
.hidden __clone
.type __clone,%function
__clone:
stmfd sp!,{r4,r5,r6,r7}
......
.text
.global __clone
.hidden __clone
.type __clone,@function
__clone:
push %ebp
......
.text
.global __clone
.hidden __clone
.type __clone,@function
__clone:
movem.l %d2-%d5,-(%sp)
......
.global __clone
.hidden __clone
.type __clone,@function
# r5, r6, r7, r8, r9, r10, stack
......
.set noreorder
.global __clone
.hidden __clone
.type __clone,@function
__clone:
# Save function pointer and argument pointer on new thread stack
......
.set noreorder
.global __clone
.hidden __clone
.type __clone,@function
__clone:
# Save function pointer and argument pointer on new thread stack
......
.set noreorder
.global __clone
.hidden __clone
.type __clone,@function
__clone:
# Save function pointer and argument pointer on new thread stack
......
......@@ -3,6 +3,7 @@
* sys_clone(flags, stack, ptid, ctid, tls)
*/
.global __clone
.hidden __clone
.type __clone,@function
__clone:
l.addi r4, r4, -8
......
.text
.global __clone
.hidden __clone
.type __clone, %function
__clone:
# int clone(fn, stack, flags, arg, ptid, tls, ctid)
......
.text
.global __clone
.hidden __clone
.type __clone, %function
__clone:
# int clone(fn, stack, flags, arg, ptid, tls, ctid)
......
.text
.global __clone
.hidden __clone
.type __clone, %function
__clone:
# int clone(
......
.text
.global __clone
.hidden __clone
.type __clone, @function
__clone:
! incoming: fn stack flags arg ptid tls ctid
......
.text
.global __clone
.hidden __clone
.type __clone,@function
__clone:
movl $0x40000038,%eax /* SYS_clone */
......
.text
.global __clone
.hidden __clone
.type __clone,@function
__clone:
xor %eax,%eax
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册