[m-rev.] for review: lcmc for high-level data

Julien Fischer juliensf at csse.unimelb.edu.au
Tue Sep 15 16:56:35 AEST 2009


Hi,

On Tue, 15 Sep 2009, Peter Wang wrote:

> Branches: main
>
> Support --optimize-constructor-last-call in the java grade, and possibly other
> grades using high-level data.
>
> compiler/handle_options.m:
>        Don't disable --optimize-constructor-last-call on high-level data, nor
>        if the target language is Java.
>
> compiler/lco.m:
>        Use a modified transformation when targetting high-level data that
>        doesn't require taking the address of fields nor using the store_at_ref
>        builtin.
>
> compiler/ml_unify_gen.m:
>        Handle the `take_address_fields' part of a construction unification
>        differently when targetting high-level data.
>
> tests/valid/Mercury.options:
> tests/valid/Mmakefile:
> tests/valid/lco_term.m:
>        Add a test case.
>
> diff --git a/compiler/handle_options.m b/compiler/handle_options.m
> index 8ce66e7..a34295f 100644
> --- a/compiler/handle_options.m
> +++ b/compiler/handle_options.m
> @@ -1478,11 +1478,6 @@ postprocess_options_2(OptionTable0, Target, GC_Method, TagsMethod0,
>             ProfileDeep = yes
>         ),
>
> -        % --optimize-constructor-last-call is currently not compatible with
> -        % --highlevel-data.
> -        option_implies(highlevel_data, optimize_constructor_last_call,
> -            bool(no), !Globals),
> -

Please check that it does work in, for example hl.gc, before doing the
above.  If it doesn't then you've just broken then standard library in
that grade - if it doesn't work in C grades with --highlevel-data then
disable it for again for C + high-level data.

Julien.
--------------------------------------------------------------------------
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