$NetBSD: patch-bm,v 1.3 2004/06/24 23:09:56 taya Exp $ diff -ru ../Orig/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp ./xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp --- ../Orig/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp 2001-09-29 05:12:52.000000000 +0900 +++ ./xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp 2004-06-15 23:56:36.000000000 +0900 @@ -118,18 +118,23 @@ * so they are contiguous with values passed on the stack, and then calls * PrepareAndDispatch() to do the dirty work. */ +#ifndef __ELF__ +#define SYMBOLPREFIX "_" +#else +#define SYMBOLPREFIX +#endif #define STUB_ENTRY(n) \ __asm__( \ - ".global _Stub"#n"__14nsXPTCStubBase\n\t" \ -"_Stub"#n"__14nsXPTCStubBase:\n\t" \ + ".global "SYMBOLPREFIX"Stub"#n"__14nsXPTCStubBase\n\t" \ +SYMBOLPREFIX"Stub"#n"__14nsXPTCStubBase:\n\t" \ "stmfd sp!, {r1, r2, r3} \n\t" \ "mov ip, sp \n\t" \ "stmfd sp!, {fp, ip, lr, pc} \n\t" \ "sub fp, ip, #4 \n\t" \ "mov r1, #"#n" \n\t" /* = methodIndex */ \ "add r2, sp, #16 \n\t" \ - "bl _PrepareAndDispatch__FP14nsXPTCStubBaseUiPUi \n\t" \ + "bl "SYMBOLPREFIX"PrepareAndDispatch__FP14nsXPTCStubBaseUiPUi \n\t" \ "ldmea fp, {fp, sp, lr} \n\t" \ "add sp, sp, #12 \n\t" \ "mov pc, lr \n\t" \