Re: GCC upgrade ? on -current

[ Available lists | Index of freebsd-current | Month of Jun 2002 | Week of 25 Jun 2002 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Joe Marcus Clarke <marcus@FreeBSD.org>
Date
25 Jun 2002 14:18:53
Subject
Re: GCC upgrade ? on -current
Message-ID
1025029926.328.9.camel@gyros.marcuscom.com

In reply to
References to

[ Hide this part ]
On Tue, 2002-06-25 at 04:04, Sean Chittenden wrote:
> > Just a query. Is there anything stopping us from moving to the
> > latest gcc on current ? Just curious. Cause mozilla won't compile
> > with gcc from current and I have installed gcc from the ports just
> > for that.
>
> I hacked together a really crude patch based on some info from Joe
> Clark(e?). Dig through the archives from earlier this week and you
> should find something. -sc

I'm still waiting on someone to come back to me with alpha results, and
I'll commit the patch. If you missed it, it's re-attached.

Joe

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



[ Hide this part ]
--- 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 merged.
+ * This solves a problem wherein regxpcom and/or regchrome would seg fault
+ * after running for a while. This problem has also exhibited itself on
+ * 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



Elapsed time: 0.219 seconds