Use the macro WEAK_ALIAS. Tested on 32 and 64-bit.

This commit is contained in:
Andreas Tobler 2012-01-06 09:21:40 +00:00
parent 9cb24e3c98
commit b286f80c2d
2 changed files with 10 additions and 20 deletions

View File

@ -44,10 +44,8 @@
.align 2; \
2: b PIC_PLT(CNAME(HIDENAME(cerror))); \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(x); \
.set CNAME(x),CNAME(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(x,__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x),__CONCAT(__sys_,x)); \
_SYSCALL(x); \
bso 2b
@ -55,8 +53,7 @@ ENTRY(__CONCAT(__sys_,x)); \
.text; \
.align 2; \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x),__CONCAT(__sys_,x)); \
_SYSCALL(x); \
bnslr; \
b PIC_PLT(CNAME(HIDENAME(cerror)))
@ -66,10 +63,8 @@ ENTRY(__CONCAT(__sys_,x)); \
.align 2; \
2: b PIC_PLT(CNAME(HIDENAME(cerror))); \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(x); \
.set CNAME(x),CNAME(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(x,__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x), __CONCAT(__sys_,x)); \
_SYSCALL(x); \
bnslr; \
b PIC_PLT(CNAME(HIDENAME(cerror)))

View File

@ -52,10 +52,8 @@
mtlr %r0; \
blr; \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(x); \
.set CNAME(x),CNAME(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(x,__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x),__CONCAT(__sys_,x)); \
_SYSCALL(x); \
bso 2b
@ -63,8 +61,7 @@ ENTRY(__CONCAT(__sys_,x)); \
.text; \
.align 2; \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x),__CONCAT(__sys_,x)); \
_SYSCALL(x); \
bnslr; \
mflr %r0; \
@ -81,10 +78,8 @@ ENTRY(__CONCAT(__sys_,x)); \
.text; \
.align 2; \
ENTRY(__CONCAT(__sys_,x)); \
.weak CNAME(x); \
.set CNAME(x),CNAME(__CONCAT(__sys_,x)); \
.weak CNAME(__CONCAT(_,x)); \
.set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \
WEAK_ALIAS(x,__CONCAT(__sys_,x)); \
WEAK_ALIAS(__CONCAT(_,x), __CONCAT(__sys_,x)); \
_SYSCALL(x); \
bnslr; \
\