[m-rev.] for review: add ll_debug GC grade

Ian MacLarty maclarty at csse.unimelb.edu.au
Wed Dec 7 09:06:35 AEDT 2011


On Wed, Dec 7, 2011 at 8:22 AM, Peter Ross <pro at missioncriticalit.com> wrote:
> On 6 December 2011 20:29, Ian MacLarty <maclarty at csse.unimelb.edu.au> wrote:
>> For review by Julien.
>>
>> Branches: main, 11.07
>>
>> Add a new GC grade for the .ll_debug Mercury grade.
>>
>> Previously the .ll_debug grade used the usual "gc" GC grade.  This was a
>> problem, because it meant that installing a .ll_debug grade would overwrite the
>> libgc library with the unoptimised .ll_debug version, resulting in a severe
>> performance loss for applications even if they weren't built in the .ll_debug
>> grade.
>>
>> compiler/compile_target_code.m:
>>    Link against the ll_debug GC library if low-level debugging
>>    is enabled.
>>
>> scripts/ml.in:
>>    Use the new ll_debug GC grade for the .ll_debug Mercury
>>    grades.
>>
> Maybe the ll_debug grade should imply the gcd grade?  Rather than
> installing a new version of the gc library.
>

That sounds reasonable, but there are a few things to sort out:

- The .gcd grade does not seem to imply all the c options that
.ll_debug does.  It only seems to disable the NO_DEBUGGING macro.
Perhaps .gcd should also imply -g and -O0 when compiling the gc (but
perhaps it already does and I missed it).
- What exactly do you mean by "imply".  Does that mean if I request
hlc.gc.ll_debug I'll actually get hlc.gcd.ll_debug.  That would be
confusing.  Perhaps a better solution would be to simply disallow
grades with both .gc and .ll_debug?

Ian.

--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list