libc: ARM generateasm

This commit is contained in:
Arun Thomas 2012-08-07 17:01:25 +02:00
parent fc42f78836
commit 0ae2e2df94

View file

@ -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 <machine/asm.h> \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}