From owner-freebsd-current Thu Jun 20 22:46:32 2002 Delivered-To: freebsd-current@freebsd.org Received: from creme-brulee.marcuscom.com (rdu57-17-158.nc.rr.com [66.57.17.158]) by hub.freebsd.org (Postfix) with ESMTP id 36FC837B410 for ; Thu, 20 Jun 2002 22:46:24 -0700 (PDT) Received: from shumai.marcuscom.com (marcus@shumai.marcuscom.com [192.168.1.4]) by creme-brulee.marcuscom.com (8.12.3/8.12.3) with ESMTP id g5L5i5B4052902; Fri, 21 Jun 2002 01:44:05 -0400 (EDT) (envelope-from marcus@marcuscom.com) Subject: Re: The -current state of mozilla affairs From: Joe Marcus Clarke To: Sean Chittenden Cc: Kris Kennaway , walt , freebsd-current In-Reply-To: <20020619232135.D37593@ninja1.internal> References: <3CFC588A.9070903@sbcglobal.net> <20020604134655.B62465@xor.obsecurity.org> <20020619183056.K31745@ninja1.internal> <1024539159.44782.21.camel@shumai.marcuscom.com> <20020619232135.D37593@ninja1.internal> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-je5tqJDSLx2BBmRTJNeP" X-Mailer: Ximian Evolution 1.0.7 Date: 21 Jun 2002 01:46:57 -0400 Message-Id: <1024638418.52624.34.camel@shumai.marcuscom.com> Mime-Version: 1.0 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --=-je5tqJDSLx2BBmRTJNeP Content-Type: multipart/mixed; boundary="=-qi2a5+B92RhjJkXI8Fx1" --=-qi2a5+B92RhjJkXI8Fx1 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Thu, 2002-06-20 at 02:21, Sean Chittenden wrote: > > > I supped a -CURRENT system 3 days ago and am still having the problem > > > described here, but the gcc that's in the base system is 3.1 at this > > > point. I'm installing gcc32 now and will try building this again > > > using a newer version of GCC but am not sure if this'll fix anything. > > > Anyone have any ideas/clues? -sc > >=20 > > I do, but admittedly, it's not my idea. Peter Kostouros has said > > that defining THUNK_BASED_THIS_ADJUST in > > xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h fixes > > the build problem on -CURRENT. I have not tested this yet, but I > > did test a build with gcc31 from ports (per mbr@'s suggestion), and > > that works just fine. > > > > I want to test Peter's suggestion before I add more bloat to Mozilla. = I > > just have a really slow -CURRENT machine. If you'd like to test the > > option, undefine CFRONT_STYLE_THIS_ADJUST, and define > > THUNK_BASED_THIS_ADJUST in the above header file, and see if it works. >=20 > Sweeet! We've got a winner. The attach patched should work but is > untested (I just brute-forced the defs earlier and am not about to > wait another 4+hrs to test this little patch). :~) Anyway, any chance > this could be committed as a patch for mozilla? -sc How about this one? It's very similar to yours, Sean, but thunk adjustments will also be made for all non-i386 platforms. Since I don't readily have an alpha workstation to test with, I would appreciate if someone could build mozilla with this patch on alpha -stable, and let me know how it goes. Again, thanks to Peter Kostouros for the idea of using thunking as a workaround for these problems. Joe >=20 > --=20 > Sean Chittenden > ---- >=20 > --- xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h.orig T= ue Apr 9 20:37:34 2002 > +++ xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h Wed Ju= n 19 23:23:38 2002 > @@ -94,7 +94,7 @@ > * gcc is that the system gcc defines __FreeBSD_cc_version. This variab= le > * can also identify the period of time that 4.0-CURRENT used thunks. > */ > -#if defined(__FreeBSD_cc_version) && \ > + #if defined(__FreeBSD_cc_version) && (__FreeBSD_cc_version < 500003) &&= \ > (__FreeBSD_cc_version < 400002 || __FreeBSD_cc_version > 400003) > #define CFRONT_STYLE_THIS_ADJUST > #else --=-qi2a5+B92RhjJkXI8Fx1 Content-Disposition: attachment; filename=xptc_platforms_unixish_x86.h.diff Content-Type: text/plain; name=xptc_platforms_unixish_x86.h.diff; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable --- xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h.orig Fri= Jun 21 01:12:40 2002 +++ xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h Fri Jun = 21 01:41:51 2002 @@ -94,8 +94,16 @@ * gcc is that the system gcc defines __FreeBSD_cc_version. This variable * can also identify the period of time that 4.0-CURRENT used thunks. */ -#if defined(__FreeBSD_cc_version) && \ - (__FreeBSD_cc_version < 400002 || __FreeBSD_cc_version > 400003) + +/* It seems we need to use thunks in FreeBSD -CURRENT after gcc-3.1 was me= rged. + * This solves a problem wherein regxpcom and/or regchrome would seg fault + * after running for a while. This problem has also exhibited itself on=20 + * the alpha platform. Therefore, use thunks on all non-i386 versions of + * -stable and _all_ versions of -CURRENT that are using gcc-3.1. + */ +#if defined(__FreeBSD_cc_version) && defined(__i386__) && \ + (__FreeBSD_cc_version < 400002 || __FreeBSD_cc_version > 400003) && \ + (__FreeBSD_cc_version < 500003) #define CFRONT_STYLE_THIS_ADJUST #else #define THUNK_BASED_THIS_ADJUST --=-qi2a5+B92RhjJkXI8Fx1-- --=-je5tqJDSLx2BBmRTJNeP Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQA9Er3Rb2iPiv4Uz4cRApIwAJ4gGx27HhMczV7ULUI94lU0md+34ACeI1TW +GpZm5+hHMovBriUiqWjAlQ= =QFWM -----END PGP SIGNATURE----- --=-je5tqJDSLx2BBmRTJNeP-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message