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>