summaryrefslogtreecommitdiff
path: root/www/mozilla-stable/patches/patch-cc
diff options
context:
space:
mode:
Diffstat (limited to 'www/mozilla-stable/patches/patch-cc')
-rw-r--r--www/mozilla-stable/patches/patch-cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/www/mozilla-stable/patches/patch-cc b/www/mozilla-stable/patches/patch-cc
new file mode 100644
index 00000000000..e33f8f7b469
--- /dev/null
+++ b/www/mozilla-stable/patches/patch-cc
@@ -0,0 +1,16 @@
+$NetBSD: patch-cc,v 1.1 2004/12/04 03:50:41 taya Exp $
+
+--- /mnt/local/src/mozilla-1.7rc3/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_alpha.cpp 2004-08-13 01:24:00.000000000 +0900
++++ ./xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_alpha.cpp 2004-08-13 01:23:35.000000000 +0900
+@@ -163,7 +163,11 @@
+ "bis $16,$16,$1\n\t" /* load "this" */
+ "ldq $2,16($15)\n\t" /* load "methodIndex" */
+ "ldq $1,0($1)\n\t" /* load vtable */
++#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
++ "s8addq $2,0,$2\n\t" /* vtable index = "methodIndex" * 8 */
++#else /* G++2.95 ABI */
+ "s8addq $2,16,$2\n\t" /* vtable index = "methodIndex" * 8 + 16 */
++#endif
+ "addq $1,$2,$1\n\t"
+ "ldq $27,0($1)\n\t" /* load address of function */
+ "jsr $26,($27),0\n\t" /* call virtual function */