$NetBSD: patch-bm,v 1.1.1.1 2008/06/28 10:01:07 tnn Exp $ diff -ruN ../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 2004-04-18 23:18:18.000000000 +0900 +++ ./xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp 2005-12-04 19:17:13.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" \