[m-rev.] for review; compiler changes needed for il grade

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Jun 28 20:34:17 AEST 2002


On 27-Jun-2002, Peter Ross <pro at missioncriticalit.com> wrote:
> Misc changes to the compiler needed so that the library can be compiled in the
> il grade.  Note that the library doesn't yet currently compile in the il grade,
> these changes are just the first step to getting it to.

That looks fine.
Some minor comments:

> compiler/handle_options.m:
> 	Intermodule optimization needs to be turned on when using high-level
> 	data in the il grade, so that equivalence types can be fully expanded.

s/equivalence/abstract equivalence/

The same change is also required for the java grade -- it would be
great if you could do that one too.

Note that intermodule optimization is also required in the ilc grade,
but only in some cases: when you have abstract equivalence types that
are defined as equivalent to float, char, string, or int.

But for the ilc grade, it's probably enough to let people enable it
explicitly if they hit one of those cases.

> +% Is the current module a member of the std library, is so which module is it?
> +:- pred is_std_lib_module(mlds_module_name::in, string::out) is semidet.

s/is so/and if so/

> +	( { mercury_std_library_module_name(ModuleName) } ->
> +		io__write_strings([
> +			"#using ""mercury_mcpp.dll""\n",
> +			"#using ""mercury_il.dll""\n",
> +			"#using ""private_builtin.dll""\n",
> +			"#using ""builtin.dll""\n"])

Using builtin.dll and private_builtin.dll here looks a bit dodgy.
In particular, which of these two modules should get built first?
There's a cyclic dependency.  So I think there should at least be
an XXX comment.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list