summaryrefslogtreecommitdiff
path: root/mail/thunderbird/patches/patch-xg
blob: 6caa98e2b195120cc374caf1bba7e19116e89c14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$NetBSD: patch-xg,v 1.1 2010/03/16 10:59:09 tnn Exp $

NetBSD/arm xptcall support code. From pkgsrc/www/firefox/patch-bm.

--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp.orig	2009-06-29 18:15:33.000000000 +0200
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm_netbsd.cpp
@@ -118,18 +118,23 @@ PrepareAndDispatch(nsXPTCStubBase* self,
  * 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"				\