Boost logo

Boost-Build :

Subject: Re: [Boost-build] Major engine changes
From: Belcourt, K. Noel (kbelco_at_[hidden])
Date: 2011-12-03 18:55:15

On Dec 3, 2011, at 4:18 PM, Belcourt, K. Noel wrote:

> On Dec 3, 2011, at 1:31 PM, Steven Watanabe wrote:
>> On 12/03/2011 11:00 AM, Belcourt, K. Noel wrote:
>>> On Dec 3, 2011, at 11:43 AM, Belcourt, K. Noel wrote:
>>>> On Nov 29, 2011, at 5:02 PM, Steven Watanabe wrote:
>>>>> I've just committed a major rewrite of the
>>>>> jam interpreter. So, far, I'm seeing a 2x speed
>>>>> up running bjam -n -d0 in $BOOST_ROOT/status.
>>>>> I've tried to test my changes thoroughly, but, as
>>>>> always, there may be something that I missed.
>>>>> If anything breaks, please let me know, and I'll
>>>>> try to deal with it ASAP.
>>>> It looks as if big endian (SunOS and AIX) bjam is segfaulting. I
>>>> haven't had time yet to debug this but I noticed a few new
>>>> warnings.
>>>> "function.c", line 376: warning: implicit function declaration:
>>>> backtrace_line
>>>> "function.c", line 378: warning: implicit function declaration:
>>>> backtrace
>>>> "function.c", line 2685: warning: implicit function declaration:
>>>> glob
>>>> "jam.c", line 622: warning: implicit function declaration: pwd_done
>>> And a bit more diagnostic in the attached file (dying trying to
>>> compile
>>> process_jam_log on SunOS).
>> Okay. I think the problem is in project.find.
>> I've added a few more asserts to the engine
>> and the attached patch adds extra instrumentation
>> to project.find. Can you give me the output
>> with the latest bjam and with this patch applied?
> I can, but it doesn't fail when I run it by hand. The only way I
> get a segmentation fault now is by running the nightly test script,
> this causes it to dump core. I know this is almost useless but
> here's the latest call stack (sorry, there's no symbols).

Hi Steven,

The issue is the optimizer, guess it can't handle your recent
changes. bjam on SunOS is fine if built with gcc or built with Sun's
compiler and lower optimization. Fails if either -xO4 or -fast is
used. Building bjam with Sun compiler at -xO3 fixes the problem.
I'll try to look at the AIX issues tomorrow.

I'll checkin in a patch to build.jam to eliminate -fast and replace -
xO4 with -xO3.

Thanks for your help.

-- Noel

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at