From owner-freebsd-ports@FreeBSD.ORG Wed May 1 02:55:55 2013 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A5F20EE6; Wed, 1 May 2013 02:55:55 +0000 (UTC) (envelope-from rafael.espindola@gmail.com) Received: from mail-vb0-x229.google.com (mail-vb0-x229.google.com [IPv6:2607:f8b0:400c:c02::229]) by mx1.freebsd.org (Postfix) with ESMTP id 55D09135E; Wed, 1 May 2013 02:55:55 +0000 (UTC) Received: by mail-vb0-f41.google.com with SMTP id f13so1001717vbg.28 for ; Tue, 30 Apr 2013 19:55:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:content-transfer-encoding; bh=ks5ivBvcyQt7dfKfCibFqpn2T/ajU2kPviRseEBPebY=; b=lVf9sX8XnHJPKFW8PiGJbZx3hyHSyWkyIka9LbPBijIYB2ZXL07hMmRu5XCsAYjNqB eusuM0McYeQWmsKvex6wtrzCGSfA6HrcGF2VT1rY2EnGw48hUgNOw05AWPBjkdXVz/UJ ptMJeDS5OBrTMBWLaXyjgatmeXfyMOpSbImFSJvUpPE8AVVCgdom0sV5+Loo3Xl8p8Nw 7ydL0TbTbCwJ0yw8pzz0gnfCKJGPNcOEFxyYAoij+mmOcsHYUGReh5ilIctNNju7YVkF 4xAHeIoe/N2sEFsYD2//38aV3TPXInd8YT5lDsxRGwxzHJeNlZC0y/mW904UpVL5mZIB S1BQ== MIME-Version: 1.0 X-Received: by 10.220.173.6 with SMTP id n6mr325272vcz.52.1367376954782; Tue, 30 Apr 2013 19:55:54 -0700 (PDT) Received: by 10.52.65.107 with HTTP; Tue, 30 Apr 2013 19:55:54 -0700 (PDT) In-Reply-To: References: <20130419020021.GA16918@test.yahoo.com> <51716917.90101@smeets.im> <517187B9.40106@smeets.im> <1UXDVA-0001b7-7U@internal.tormail.org> Date: Tue, 30 Apr 2013 22:55:54 -0400 Message-ID: Subject: Re: firefox build broken under clang 3.3 From: =?UTF-8?Q?Rafael_Esp=C3=ADndola?= To: Dimitry Andric Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: kit , Ehsan Akhgari , Brandon Gooch , Benjamin Kramer , "freebsd-ports@freebsd.org ports" , Jan Beich X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 May 2013 02:55:55 -0000 OK, I was able to reproduce this. I am trying to reduce the testcase. On 30 April 2013 14:23, Dimitry Andric wrote: > On Apr 30, 2013, at 18:34, Jan Beich wrote: > ... >> The faulting function is lost within crash handler. If you build >> firefox with >> >> # use DEBUG_FLAGS or set STRIP to empty explicitly >> CFLAGS +=3D ${DEBUG_FLAGS} >> DEBUG_FLAGS +=3D -O0 -g >> >> jaeger jit crash would look like >> >> http://lists.freebsd.org/pipermail/freebsd-current/2013-April/041165.htm= l > > The firefox crash in that post was with -O2, so it is most likely not due= to the vectorizer then. > > In any case, I have not been able to reproduce that either. I have brows= ed stackoverflow.com for about 5 minutes, clicking a whole bunch of random = articles and links, and no problems whatsoever occurred. That is with the = default www/firefox port, which seems to be the released Firefox 20.0, at i= ts default settings, on amd64. > > >> It doesn't happen on firefox23 with baseline jit[1] disabled via pref. >> A big change like zones (bug 759585) may have refactored code enough >> to not hit the clang bug. So, try either clang trunk or >> >> http://trillian.chruetertee.ch/freebsd-gecko/changeset/1256/trunk/www/fi= refox/files/patch-clang33 >> >> The latter pessimizes inlining for clang 3.2 as well. >> >> [1] baseline crashes in a different way >> https://bugzilla.mozilla.org/show_bug.cgi?id=3D860867 > > I do not like the workaround in that Mozilla bug, since it simply disable= s the vectorizer. I can understand that software must always ship tomorrow= , but it would have been nicer to attempt to figure out what is incorrectly= optimized, and why... > > >>> Rebuilding with debugging symbols provides no further insight, as that >>> seems to provide a work-around for whatever the root cause may be >>> (i.e. no more segfaults). >> >> DEBUG enables compile-time diagnostics and strips any -O* from CFLAGS. > > Indeed. To work around this, use the following diff: > > Index: Mk/bsd.port.mk > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- Mk/bsd.port.mk (revision 316903) > +++ Mk/bsd.port.mk (working copy) > @@ -1580,7 +1580,7 @@ > .if defined(WITH_DEBUG) && !defined(WITHOUT_DEBUG) > STRIP_CMD=3D ${TRUE} > DEBUG_FLAGS?=3D -g > -CFLAGS:=3D ${CFLAGS:N-O*:N-fno-strict*} ${DEBUG_FLAGS} > +CFLAGS:=3D ${CFLAGS} ${DEBUG_FLAGS} > .endif > > .if defined(NOPORTDOCS) >