From owner-freebsd-current Wed Mar 13 12:15:33 2002 Delivered-To: freebsd-current@freebsd.org Received: from screech.weirdnoise.com (209-128-78-198.BAYAREA.NET [209.128.78.198]) by hub.freebsd.org (Postfix) with ESMTP id 1FE1437B400; Wed, 13 Mar 2002 12:15:29 -0800 (PST) Received: from screech.weirdnoise.com (localhost [127.0.0.1]) by screech.weirdnoise.com (8.11.6/8.9.3) with ESMTP id g2DKFYv17886; Wed, 13 Mar 2002 12:15:34 -0800 (PST) Message-Id: <200203132015.g2DKFYv17886@screech.weirdnoise.com> X-Mailer: exmh version 2.3.1 01/18/2001 with nmh-1.0.4 To: Martin Blapp Cc: Kris Kennaway , Jan Stocker , current@FreeBSD.ORG, hackers@FreeBSD.ORG, obrien@FreeBSD.ORG, edhall@screech.weirdnoise.com Subject: Re: gcc -O broken in CURRENT In-Reply-To: Message from Martin Blapp of "Wed, 13 Mar 2002 14:08:55 +0100." <20020313140429.B2573-100000@levais.imp.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 13 Mar 2002 12:15:34 -0800 From: Ed Hall 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 Exception-handling is broken with -O in -stable, and has been for years. FreeBSD is one of the few systems that use setjmp/longjmp stack unwinds to implement exceptions, so when the GCC folks broke that path, it was never fixed. There are supposedly patches floating around that fix the problem, but they either didn't work as advertised or the ball got dropped. This problem should exist in -current since I think FreeBSD finally drops setjmp/longjmp stack unwinds and goes to dwarf 2 unwinds, which do work (and which are used by the GCC 2.95 port, which also works but which isn't compatible with /usr/lib/libstdc++.{a,so}). This issue is why Yahoo! has to use its own build of GCC, and I doubt we're the only ones... -Ed To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message