Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Apr 2013 22:55:54 -0400
From:      =?UTF-8?Q?Rafael_Esp=C3=ADndola?= <rafael.espindola@gmail.com>
To:        Dimitry Andric <dim@freebsd.org>
Cc:        kit <ktsin@acm.org>, Ehsan Akhgari <ehsan.akhgari@gmail.com>, Brandon Gooch <jamesbrandongooch@gmail.com>, Benjamin Kramer <benny.kra@gmail.com>, "freebsd-ports@freebsd.org ports" <freebsd-ports@freebsd.org>, Jan Beich <jbeich@tormail.org>
Subject:   Re: firefox build broken under clang 3.3
Message-ID:  <CAG3jReLD=B9Xd22nvcaUstN3D9EdkEmB--q8imzife2ZRO9qEA@mail.gmail.com>
In-Reply-To: <ED3C5033-F932-4F56-895F-906873667C64@freebsd.org>
References:  <20130419020021.GA16918@test.yahoo.com> <51716917.90101@smeets.im> <F82EAEBA-C47D-4AC6-8FAE-AC3541B131C7@FreeBSD.org> <517187B9.40106@smeets.im> <CALBk6yLOV8fzdAY9y0_7SZvR9N8J-19FrwZjFv4t14ub8wmGiA@mail.gmail.com> <1UXDVA-0001b7-7U@internal.tormail.org> <ED3C5033-F932-4F56-895F-906873667C64@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
OK, I was able to reproduce this. I am trying to reduce the testcase.

On 30 April 2013 14:23, Dimitry Andric <dim@freebsd.org> wrote:
> On Apr 30, 2013, at 18:34, Jan Beich <jbeich@tormail.org> 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)
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG3jReLD=B9Xd22nvcaUstN3D9EdkEmB--q8imzife2ZRO9qEA>