提交 72b25ddb 编写于 作者: R Rich Felker

use hidden visibility for call from dlsym to internal __dlsym

上级 cbc02ba2
.global dlsym
.hidden __dlsym
.type dlsym,%function
dlsym:
mov x2,x30
......
.text
.global dlsym
.hidden __dlsym
.type dlsym,%function
dlsym:
mov r2,lr
......
......@@ -1598,6 +1598,7 @@ int __dladdr(const void *addr, Dl_info *info)
return 1;
}
__attribute__((__visibility__("hidden")))
void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra)
{
void *res;
......
.text
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
push (%esp)
......
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
brid __dlsym@PLT
brid __dlsym
add r7, r15, r0
.set noreorder
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
lui $gp, %hi(_gp_disp)
......
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
l.j plt(__dlsym)
l.j __dlsym
l.ori r5, r9, 0
.text
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
mflr 5 # The return address is arg3.
......
.text
.global dlsym
.hidden __dlsym
.type dlsym, @function
dlsym:
mov.l L1, r0
......@@ -7,4 +8,4 @@ dlsym:
1: mov.l @r15, r6
.align 2
L1: .long __dlsym@PLT-(1b-.)
L1: .long __dlsym-(1b-.)
.text
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
mov (%rsp),%rdx
......
.text
.global dlsym
.hidden __dlsym
.type dlsym,@function
dlsym:
mov (%rsp),%rdx
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册