Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Sep 2002 16:56:38 -0400 (EDT)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        obrien@FreeBSD.ORG, Joe Marcus Clarke <marcus@marcuscom.com>, alpha@FreeBSD.ORG
Subject:   getting closer (was Re: mozilla failure on 4.6.2)
Message-ID:  <15741.2822.526047.253409@grasshopper.cs.duke.edu>
In-Reply-To: <15739.43883.152090.936327@grasshopper.cs.duke.edu>
References:  <20020906040641.GA61111@xor.obsecurity.org> <1031287598.361.2.camel@gyros.marcuscom.com> <15736.40749.986834.818558@grasshopper.cs.duke.edu> <1031329151.342.9.camel@gyros.marcuscom.com> <20020906194732.GA2244@dragon.nuxi.com> <15737.2550.488154.4401@grasshopper.cs.duke.edu> <20020907000825.GA4091@dragon.nuxi.com> <15739.43883.152090.936327@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help

Andrew Gallatin writes:
 > 
 > David O'Brien writes:
 >  > The vtable format in stable is not the same as AlphaLinux, it is the same
 >  > in -CURRENT.  Do we know if the results you posted also happen on
 >  > -CURRENT?
 > 
 > Checking now.  Can you explain the vtable format in -stable, or point
 > me at a description so I can modify the code to work with -stable?
 > 

I think I may have figured it out..  I stumbled on the
$vtable symbol.

This appended patch *seems* to work as far as the TestXPTCInvoke code
goes.  I'm going to try YAMB (yet another mozilla build) now.

I hope I can get it to the post-build stage to see if this fixes the segvs.

Drew

--- xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_alpha.cpp.bak	Mon Sep  9 14:47:20 2002
+++ xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_alpha.cpp	Mon Sep  9 16:48:45 2002
@@ -163,7 +163,12 @@
     "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 0
     "s8addq $2,16,$2\n\t"   /* vtable index = "methodIndex" * 8 + 16 */
+#else
+    "mulq $2,16,$2\n\t"   
+    "addq $2, 24, $2\n\t"   /* vtable index = "methodIndex" * 16 + 24 */
+#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 */

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15741.2822.526047.253409>