Re: firebox build fails post clang-3.4 merge

From: Don Lewis <truckman_at_FreeBSD.org>
Date: Thu, 27 Feb 2014 23:39:20 -0800 (PST)
On 26 Feb, Benjamin Kaduk wrote:
> On Wed, 26 Feb 2014, Don Lewis wrote:
> 
>> On 26 Feb, Michael Butler wrote:
>>> On 02/18/14 12:10, Michael Butler wrote:
>>>> Is anyone else seeing firefox failing to install after the clang-3.4
>>>> merge? As in xpcshell dumping core ..
>>>
>>> An update ..
>>>
>>> Recompiling with GCC48 on -current yields the same result. Seems to run
>>> correctly when invoked from the command-line but seg-faults with "errno
>>> = 4" (invalid instruction) from the build
>>>
>>> Giving up and using the Linux port .. :-(
>>
>> I've also seen this problem with clang-3.4 on i386.  It looks like a
>> clang bug to me.  Clang is putting ud2 instructions in its output which
>> are guaranteed to fault when it compiles nsAppRunner.cpp.  See
>> <http://www.freebsd.org/cgi/query-pr.cgi?pr=187103>.
> 
> That would seem to indicate that clang believes the source code in 
> question is exercising a case which is explicitly listed as giving 
> undefined behavior in the language specification. Presumably that means we 
> need a C++ language lawyer to look over the code in question.

After spending the last couple of days pounding my head on my desk, I
managed to come up with a standalone test case that reproduces this
problem.  The source is still on the hefty side because of all the C++
template goo (but more than an order of magnitude smaller than when I
started) but the assembly code is fairly small.  If updated my PR with
the relevant info.
Received on Fri Feb 28 2014 - 06:39:29 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:47 UTC