]> gitweb @ CieloNegro.org - pkgsrc-firefox3.git/blob - patches/patch-ad
Initial revision of the upstream www/firefox3
[pkgsrc-firefox3.git] / patches / patch-ad
1 $NetBSD: patch-ad,v 1.1.1.1 2008/06/28 10:01:07 tnn Exp $
2
3 diff -ruN ../Orig/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp ./xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp
4 --- ../Orig/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp        2004-04-18 23:18:18.000000000 +0900
5 +++ ./xpcom/reflect/xptcall/src/md/unix/xptcinvoke_netbsd_m68k.cpp      2005-12-04 19:03:09.000000000 +0900
6 @@ -132,6 +132,15 @@
7      }
8  }
9  
10 +/*
11 + * SYMBOL PREFIX must be "_" for aout symbols and "" for ELF
12 + */
13 +#ifndef __ELF__
14 +#define        SYMBOLPREFIX    "_"
15 +#else
16 +#define        SYMBOLPREFIX
17 +#endif
18 +
19  XPTC_PUBLIC_API(nsresult)
20  XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
21                     PRUint32 paramCount, nsXPTCVariant* params)
22 @@ -139,30 +148,30 @@
23      PRUint32 result;
24  
25   __asm__ __volatile__(
26 -    "movl  %4, sp@-\n\t"
27 -    "movl  %3, sp@-\n\t"
28 -    "jbsr  _invoke_count_words\n\t"     /* count words */
29 -    "addql #8, sp\n\t"
30 -    "lsll  #2, d0\n\t"      /* *= 4 */
31 -    "movl  sp, a2\n\t"     /* save original sp */
32 -    "subl  d0, sp\n\t"      /* make room for params */
33 -    "movl  sp, a0\n\t"
34 -    "movl  %4, sp@-\n\t"
35 -    "movl  %3, sp@-\n\t"
36 -    "movl  a0, sp@-\n\t"
37 -    "jbsr  _invoke_copy_to_stack\n\t"   /* copy params */
38 -    "addl  #12, sp\n\t"
39 -    "movl  %1, a0\n\t"
40 -    "movl  a0@, a1\n\t"
41 -    "movl  %2, d0\n\t"      /* function index */
42 -    "movl  a0, d1\n\t"
43 -    "movw  a1@(8,d0:l:8), a0\n\t"
44 -    "addl  a0, d1\n\t"
45 -    "movl  a1@(12,d0:l:8), a1\n\t"
46 -    "movl  d1, sp@-\n\t"
47 -    "jbsr  a1@\n\t"
48 -    "movl  a2, sp\n\t"     /* restore original sp */
49 -    "movl  d0, %0\n\t"
50 +    "movl  %4, %%sp@-\n\t"
51 +    "movl  %3, %%sp@-\n\t"
52 +    "jbsr  "SYMBOLPREFIX"invoke_count_words\n\t"     /* count words */
53 +    "addql #8, %%sp\n\t"
54 +    "lsll  #2, %%d0\n\t"      /* *= 4 */
55 +    "movl  %%sp, %%a2\n\t"         /* save original sp */
56 +    "subl  %%d0, %%sp\n\t"      /* make room for params */
57 +    "movl  %%sp, %%a0\n\t"
58 +    "movl  %4, %%sp@-\n\t"
59 +    "movl  %3, %%sp@-\n\t"
60 +    "movl  %%a0, %%sp@-\n\t"
61 +    "jbsr  "SYMBOLPREFIX"invoke_copy_to_stack\n\t"   /* copy params */
62 +    "addl  #12, %%sp\n\t"
63 +    "movl  %1, %%a0\n\t"
64 +    "movl  %%a0@, %%a1\n\t"
65 +    "movl  %2, %%d0\n\t"      /* function index */
66 +    "movl  %%a0, %%d1\n\t"
67 +    "movw  %%a1@(8,%%d0:l:8), %%a0\n\t"
68 +    "addl  %%a0, %%d1\n\t"
69 +    "movl  %%a1@(12,%%d0:l:8), %%a1\n\t"
70 +    "movl  %%d1, %%sp@-\n\t"
71 +    "jbsr  %%a1@\n\t"
72 +    "movl  %%a2, %%sp\n\t"         /* restore original sp */
73 +    "movl  %%d0, %0\n\t"
74      : "=g" (result)         /* %0 */
75      : "g" (that),           /* %1 */
76        "g" (methodIndex),    /* %2 */