From: Arun Thomas Date: Tue, 7 Aug 2012 15:01:25 +0000 (+0200) Subject: libc: ARM generateasm X-Git-Tag: v3.2.1~402 X-Git-Url: http://zhaoyanbai.com/repos/%22http:/www.isc.org/icons/zpipe.c?a=commitdiff_plain;h=0ae2e2df9484905555793ceb43ab553c06ea3589;p=minix.git libc: ARM generateasm --- diff --git a/lib/generateasm.mk b/lib/generateasm.mk index 0fddf0bda..0b2206364 100644 --- a/lib/generateasm.mk +++ b/lib/generateasm.mk @@ -1,3 +1,15 @@ +ORIGFUNC= ${.PREFIX:S/^compat//} +RENAMEDFUNC=${.PREFIX:S/^compat__//:C/([0-9]{2})$//} +.if (${MACHINE_ARCH} == "i386") +FUNCTYPE= @function +PICJMP= jmpl *PIC_PLT(${ORIGFUNC}) +JMP= jmp ${ORIGFUNC} +.elif (${MACHINE_ARCH} == "arm") +FUNCTYPE= %%function +PICJMP= bl PIC_SYM(${ORIGFUNC}, PLT) +JMP= b ${ORIGFUNC} +.endif + ${ASM}: ${_MKTARGET_CREATE} printf '/* MINIX3 */ \n\ @@ -7,14 +19,14 @@ ${ASM}: * DO NOT EDIT: this file is automatically generated. \n\ */ \n\ #include \n\ -.global ${.PREFIX:S/^compat__//:C/([0-9]{2})$//}; \n\ -.global ${.PREFIX:S/^compat//}; \n\ -.type ${.PREFIX:S/^compat__//:C/([0-9]{2})$//},@function \n\ -${.PREFIX:S/^compat__//:C/([0-9]{2})$//}: \n\ +.global ${RENAMEDFUNC}; \n\ +.global ${ORIGFUNC}; \n\ +.type ${RENAMEDFUNC},${FUNCTYPE} \n\ +${RENAMEDFUNC}: \n\ #ifdef PIC \n\ -jmpl *PIC_PLT(${.PREFIX:S/^compat//}) \n\ +${PICJMP} \n\ #else \n\ -jmp ${.PREFIX:S/^compat//} \n\ +${JMP} \n\ #endif \n\ \n ' >${.TARGET}